示例#1
0
function get_config_func()
{
    global $mobiquo_config, $user_info, $modSettings, $maintenance, $mmessage;
    exttMbqMakeFlags();
    $config_list = array('is_open' => new xmlrpcval($maintenance == 0 ? true : false, 'boolean'), 'guest_okay' => new xmlrpcval($modSettings['allow_guestAccess'] ? true : false, 'boolean'), 'push' => new xmlrpcval('1', 'string'), 'result_text' => new xmlrpcval($maintenance == 1 ? $mmessage : '', 'base64'), 'sign_in' => new xmlrpcval(ExttMbqBase::$otherParameters['exttMbqSignIn'], 'string'), 'inappreg' => new xmlrpcval(ExttMbqBase::$otherParameters['exttMbqInappreg'], 'string'), 'sso_login' => new xmlrpcval(ExttMbqBase::$otherParameters['exttMbqSsoLogin'], 'string'), 'sso_signin' => new xmlrpcval(ExttMbqBase::$otherParameters['exttMbqSsoSignin'], 'string'), 'sso_register' => new xmlrpcval(ExttMbqBase::$otherParameters['exttMbqSsoRegister'], 'string'), 'native_register' => new xmlrpcval(ExttMbqBase::$otherParameters['exttMbqNativeRegister'], 'string'));
    if (allowedTo('search_posts')) {
        $config_list['guest_search'] = new xmlrpcval('1', 'string');
    }
    if (allowedTo('who_view')) {
        $config_list['guest_whosonline'] = new xmlrpcval('1', 'string');
    }
    $isTTServerCall = false;
    if (isset($_SERVER['HTTP_X_TT'])) {
        $code = trim($_SERVER['HTTP_X_TT']);
        $connection = new classTTConnection();
        $response = $connection->actionVerification($code, 'get_config');
        if ($response) {
            $isTTServerCall = true;
        }
    }
    foreach ($mobiquo_config as $key => $value) {
        if (!$isTTServerCall && $key == 'version') {
            $config_list[$key] = new xmlrpcval(substr($mobiquo_config['version'], 0, strpos($mobiquo_config['version'], '_')), 'string');
        } else {
            if (!in_array($key, array('is_open', 'guest_okay', 'mod_function', 'conflict_mod', 'push'))) {
                $config_list[$key] = new xmlrpcval($value, 'string');
            }
        }
    }
    if ($user_info['is_guest'] && allowedTo('search_posts')) {
        $config_list['guest_search'] = new xmlrpcval('1', 'string');
    }
    if ($user_info['is_guest'] && allowedTo('who_view')) {
        $config_list['guest_whosonline'] = new xmlrpcval('1', 'string');
    }
    if (isset($modSettings['tp_push_key']) && !empty($modSettings['tp_push_key'])) {
        $config_list['api_key'] = new xmlrpcval(md5($modSettings['tp_push_key']), 'string');
    }
    if (isset($modSettings['tp_ads_disabled']) && !empty($modSettings['tp_ads_disabled'])) {
        $ads_disabled_group = implode(',', array_map('intval', explode(',', $modSettings['tp_ads_disabled'])));
        $config_list['ads_disabled_group'] = new xmlrpcval($ads_disabled_group, 'string');
        $config_list['guest_group_id'] = new xmlrpcval(-1, 'string');
    }
    if ($isTTServerCall) {
        $config_list['sys_version'] = new xmlrpcval($modSettings['smfVersion'], 'string');
        $config_list['php_version'] = new xmlrpcval(phpversion(), 'string');
        action_get_board_stat();
        $stats = array('user' => new xmlrpcval($modSettings['totalMembers'], 'int'), 'topic' => new xmlrpcval($modSettings['totalTopics'], 'int'), 'post' => new xmlrpcval($modSettings['totalMessages'], 'int'));
        $config_list['stats'] = new xmlrpcval($stats, 'struct');
        if (!isset($modSettings['tt_banner_control'])) {
            $config_list['banner_control'] = new xmlrpcval(1, 'string');
        } else {
            $config_list['banner_control'] = new xmlrpcval(intval($modSettings['tt_banner_control']), 'string');
        }
    }
    $response = new xmlrpcval($config_list, 'struct');
    return new xmlrpcresp($response);
}
示例#2
0
function action_sign_in()
{
    global $tid_sign_in, $tt_sso_result, $modSettings;
    $tid_sign_in = true;
    exttMbqMakeFlags();
    include_once TT_ROOT . 'lib/classTTSSO.php';
    include_once TT_ROOT . 'lib/TTSSOForum.php';
    $tt_sso_result = new TTSSOBase(new TTSSOForum());
    $data = array('token' => $_POST['token'], 'code' => $_POST['code'], 'email' => $_POST['email'], 'username' => $_POST['username'], 'password' => $_POST['password']);
    $tp_iar_spam_prevention = isset($modSettings['tp_iar_spam_prevention']) ? $modSettings['tp_iar_spam_prevention'] : 1;
    if ($tp_iar_spam_prevention == 1 || $tp_iar_spam_prevention == 3) {
        $data['check_spam'] = true;
    }
    $tt_sso_result->signIn($data);
}