123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- <?php
- /**
- * [WeEngine System] Copyright (c) 2014 WE7.CC
- * WeEngine is NOT a free software, it under the license terms, visited http://www.we7.cc/ for more details.
- */
- defined('IN_IA') or exit('Access Denied');
- $dos = array('subscribe', 'check', 'ban');
- $do = in_array($do, $dos) ? $do : 'subscribe';
- load()->model('extension');
- load()->model('cache');
-
- if ($do == 'subscribe') {
-
- $_W['page']['title'] = '系统 - 订阅管理';
-
- $modules = pdo_fetchall("SELECT title, name, subscribes FROM ".tablename('modules')." WHERE subscribes <> ''", array(), 'name');
- if (!empty($modules)) {
- foreach ($modules as $module) {
- $module['subscribes'] = unserialize($module['subscribes']);
- if (!empty($module['subscribes'])) {
- foreach ($module['subscribes'] as $event) {
- if ($event == 'text' || $event == 'enter') {
- continue;
- }
- $module_subscribes[$module['name']]= $module['subscribes'];
- }
- }
- }
- }
- $mtypes = ext_module_msg_types();
- $module_ban = $_W['setting']['module_receive_ban'];
- if (!is_array($module_ban)) {
- $module_ban = array();
- }
- template('extension/subscribe');
- }
-
- if ($do == 'check') {
- $_W['uniacid'] = 1;
- load()->classs('account');
- $modulename = $_GPC['modulename'];
- $obj = WeUtility::createModuleReceiver($modulename);
- if (empty($obj)) {
- exit('error');
- }
- $obj->uniacid = $_W['uniacid'];
- $obj->acid = $_W['acid'];
- if(method_exists($obj, 'receive')) {
- @$obj->receive();
- exit('success');
- }
- }
-
- if ($do == 'ban') {
- $modulename = $_GPC['modulename'];
- $ban = $_GPC['ban'];
- if (empty($modulename)) {
- message('请设置模块名', referer(), 'error');
- }
- if (!is_array($_W['setting']['module_receive_ban'])) {
- $_W['setting']['module_receive_ban'] = array();
- }
- if (empty($ban)) {
- $_W['setting']['module_receive_ban'][$modulename] = $modulename;
- } else {
- unset($_W['setting']['module_receive_ban'][$modulename]);
- }
- setting_save($_W['setting']['module_receive_ban'], 'module_receive_ban');
- cache_build_module_subscribe_type();
- message($module_ban, '', 'ajax');
- }
|