function SSOlogin($appid, $state, $uid) { Check($appid, 'appid'); if (!empty($state)) { Check($state, 'state'); Check($uid, 'uid'); $authed = CheckUserAuthed($appid, $uid); $appType = GetAppInfo($appid, 'app_type'); $autoAuth = GetAppInfo($appid, 'auto_auth'); if ($appType == 'WSC') { if ($authed == FALSE && $autoAuth == FALSE) { //用户没有授权,且应用不是自动授权,跳转到应用大厅 if (!empty($_GET['s']) && $_GET['s'] == '1') { /* 加参数跳转到精简版界面 */ return IAUTH_SIMPLE_AUTH_CONFIRM_PAGE . '&appsid=' . $appid . '&state=' . $state; } return URL(IAUTH_APP_INFO_PAGE) . 'appsid=' . $appid . '&state=' . $state . '&showconfirm=yes#confirm'; } if ($authed == FALSE && $autoAuth == TRUE) { //用户没有授权,但是应用是自动授权,直接跳回应用的auth_call_back $authCallBack = GetAppInfo($appid, 'call_back'); $rights = Check('2:3:7:11', 'rights'); /* 由于没有应用大厅,权限被写死 */ $faile_t = '2036-12-31 23:59:59'; $verifier = newVerifier('auth', $appid, $uid, $rights, $faile_t, '', '', $state); accessLog('AUTH ' . $appid . ' ' . $uid . ' 2:3:7:11 ' . $faile_t . ' ' . $state); return URL($authCallBack) . 'verifier=' . $verifier . '&state=' . $state; } if ($authed == TRUE) { /* 用户已经授权,直接跳转回login_call_back */ $loginCallBack = GetAppInfo($appid, 'login_url'); $verifier = newVerifier('login', $appid, $uid, 'FROM_CLIENT', '', '', '', $state); return URL($loginCallBack) . 'verifier=' . $verifier . '&state=' . $state; } } /* END WSC */ } /* END !EMPTY state */ /* 其他情况,跳到应用大厅 */ return URL(IAUTH_APP_INFO_PAGE) . 'appsid=' . $appid; }
function IAUTH_remove_API($api_id) { Check($api_id, 'uid'); SQL("DELETE FROM api_info WHERE api_id={$api_id}"); accessLog('API(remove) ' . $api_id); return true; }