示例#1
0
    `res_finish_at` int(10),
    PRIMARY KEY (`id`)
) ENGINE=InnoDB;

EOF;
    if (!defined('DISCUZ_VERSION')) {
        require './source/discuz_version.php';
    }
    $settingdefault = array('wechat_mtype' => '0', 'wechat_qrtype' => '3', 'wechat_token' => random(16), 'wechat_allowregister' => '1', 'wechat_allowfastregister' => '1', 'wechat_disableregrule' => '1', 'wechat_float_qrcode' => '1', 'wechat_confirmtype' => '0', 'wechat_newusergroupid' => $_G['setting']['newusergroupid'], 'wsq_wapdefault' => 1, 'wsq_global_banner' => 1);
    require_once DISCUZ_ROOT . './source/plugin/wechat/install/update.func.php';
    runquery($sql);
    updatetable($sql);
    foreach ($settingdefault as $_key => $_default) {
        if (!isset($setting[$_key])) {
            $setting[$_key] = $_default;
        }
    }
    $setting['RELEASE'] = PLUGIN_RELEASE;
    $settings = array('mobilewechat' => serialize($setting));
    C::t('common_setting')->update_batch($settings);
    C::t('common_plugin')->delete_by_identifier('mobileoem');
    require_once DISCUZ_ROOT . './source/plugin/wechat/wechat.lib.class.php';
    $hook = WeChatHook::getAPIHook('wechat');
    if (!$hook) {
        WeChatHook::updateAPIHook(array(array('forumdisplay_variables' => array('plugin' => 'wechat', 'include' => 'wsqapi.class.php', 'class' => 'WSQAPI', 'method' => 'forumdisplay_variables')), array('viewthread_variables' => array('plugin' => 'wechat', 'include' => 'wsqapi.class.php', 'class' => 'WSQAPI', 'method' => 'viewthread_variables'))));
    } elseif ($hook['wsqindex']) {
        WeChatHook::updateAPIHook(array(array('wsqindex_variables' => array('plugin' => 'wechat'))));
    }
    DB::query("ALTER TABLE " . DB::table('forum_debatepost') . " ADD INDEX `voters` (`tid`,`voters`)", 'SILENT');
    $pluginupdated = true;
}
     }
 }
 if (function_exists('domain_create')) {
     if (preg_match('/^((http|https|ftp):\\/\\/|\\.)|(\\/|\\.)$/i', $_GET['setting']['wsq_domain'])) {
         cpmsg('setting_domain_http_error', '', 'error');
     }
 }
 $_GET['setting']['wsq_status'] = $siteinfo->res->status;
 $_GET['setting']['wsq_lastrequest'] = $siteinfo->res->lasttime;
 $settings = array('mobilewechat' => serialize($_GET['setting'] + $setting));
 C::t('common_setting')->update_batch($settings);
 updatecache('setting');
 if ($_GET['setting']['wsq_allow']) {
     WeChatHook::updateResponse(array('receiveMsg::text' => array('plugin' => 'wechat', 'include' => 'response.class.php', 'class' => 'WSQResponse', 'method' => 'text'), 'receiveEvent::click' => array('plugin' => 'wechat', 'include' => 'response.class.php', 'class' => 'WSQResponse', 'method' => 'click'), 'receiveEvent::subscribe' => array('plugin' => 'wechat', 'include' => 'response.class.php', 'class' => 'WSQResponse', 'method' => 'subscribe'), 'receiveEvent::scan' => array('plugin' => 'wechat', 'include' => 'response.class.php', 'class' => 'WSQResponse', 'method' => 'scan')));
     WeChatHook::updateRedirect(array('plugin' => 'wechat', 'include' => 'response.class.php', 'class' => 'WSQResponse', 'method' => 'redirect'));
     WeChatHook::updateAPIHook(array(array('wsqindex_variables' => array('plugin' => 'wechat', 'include' => 'wsqapi.class.php', 'class' => 'WSQAPI', 'method' => 'forumdisplay_variables')), array('forumdisplay_variables' => array('plugin' => 'wechat', 'include' => 'wsqapi.class.php', 'class' => 'WSQAPI', 'method' => 'forumdisplay_variables')), array('viewthread_variables' => array('plugin' => 'wechat', 'include' => 'wsqapi.class.php', 'class' => 'WSQAPI', 'method' => 'viewthread_variables'))));
     WeChatHook::updateViewPluginId('wechat');
     if (!in_array('mobile', $_G['setting']['plugins']['available'])) {
         $plugin = C::t('common_plugin')->fetch_by_identifier('mobile');
         if (!$plugin) {
             cpmsg(lang('plugin/wechat', 'wsq_mobile_plugin_error'), '', 'error');
         }
         C::t('common_plugin')->update($plugin['pluginid'], array('available' => 1));
         updatecache(array('plugin', 'setting'));
     }
 } else {
     $wechatredirect = WeChatHook::getRedirect();
     if ($wechatredirect['plugin'] == 'wechat') {
         $wechatredirect = array();
     }
     WeChatHook::updateRedirect($wechatredirect);
示例#3
0
 *
 */
if (!defined('IN_DISCUZ') || !defined('IN_ADMINCP')) {
    exit('Access Denied');
}
$sql = "ALTER TABLE `" . DB::table('aljwsq_user') . "` ADD `lasttime` int(10) NOT NULL ;";
DB::query($sql, 'SILENT');
if (file_exists(DISCUZ_ROOT . './source/plugin/wechat/wechat.lib.class.php')) {
    $pluginid = 'aljwsq';
    $Hooks = array('forumdisplay_topBar');
    $data = array();
    foreach ($Hooks as $Hook) {
        $data[] = array($Hook => array('plugin' => $pluginid, 'include' => 'api.class.php', 'class' => $pluginid . '_api', 'method' => $Hook));
    }
    require_once DISCUZ_ROOT . './source/plugin/wechat/wechat.lib.class.php';
    WeChatHook::updateAPIHook($data);
}
function is_utf8($word)
{
    if (preg_match("/^([" . chr(228) . "-" . chr(233) . "]{1}[" . chr(128) . "-" . chr(191) . "]{1}[" . chr(128) . "-" . chr(191) . "]{1}){1}/", $word) == true || preg_match("/([" . chr(228) . "-" . chr(233) . "]{1}[" . chr(128) . "-" . chr(191) . "]{1}[" . chr(128) . "-" . chr(191) . "]{1}){1}\$/", $word) == true || preg_match("/([" . chr(228) . "-" . chr(233) . "]{1}[" . chr(128) . "-" . chr(191) . "]{1}[" . chr(128) . "-" . chr(191) . "]{1}){2,}/", $word) == true) {
        return true;
    } else {
        return false;
    }
}
// function is_utf8
$str = file_get_contents('http://addon.discuz.com/?@liangjian');
if ($_G['charset'] == 'utf-8') {
    if (!is_utf8($str)) {
        $str = iconv('gbk', 'utf-8', $str);
    }