public static function getLoginUser() { //获取OJ登录名 if (OJLoginInterface::isLogin()) { return session('uname'); } else { return null; } }
protected function logincheck() { //检测是否本系统已登录,并进行相应处理 if (\OJLoginInterface::isLogin()) { //OJ已登录 if (!(session('goldbirds_islogin') && session('goldbirds_oj') == \OJLoginInterface::getLoginUser())) { //OJ登录后首次访问本系统,加载登录信息到session $personDB = M('Person'); $condition['ojaccount'] = \OJLoginInterface::getLoginUser(); $user = $personDB->where($condition)->find(); //查询关联该OJ的用户信息 if ($user) { session('goldbirds_islogin', 1); session('goldbirds_uid', $user['uid']); session('goldbirds_group', $user['group']); session('goldbirds_oj', \OJLoginInterface::getLoginUser()); return 2; //OJ登录且关联用户 } else { session('goldbirds_islogin', null); session('goldbirds_uid', null); session('goldbirds_group', null); session('goldbirds_oj', null); return 1; //OJ登录但无关联用户 } } else { return 2; } } else { //OJ未登录或已登出,清空本系统session session('goldbirds_islogin', null); session('goldbirds_uid', null); session('goldbirds_group', null); session('goldbirds_oj', null); return 0; } }