예제 #1
0
 public function actionStartUp()
 {
     if (!isset($_COOKIE['BDUSS']) || $_COOKIE['BDUSS'] === '') {
         $ssid = $this->_getSSID();
         if ($ssid !== false) {
             $bduss = Bd_Passport::getBDUSSBySSID($ssid);
             if ($bduss !== false) {
                 $_COOKIE['BDUSS'] = $bduss;
             } else {
                 return false;
             }
         } else {
             return false;
         }
     }
     $arrUserInfo = Saf_Base_Session::checkLogin();
     if ($arrUserInfo === false) {
         return false;
     }
     $re = self::setUserInfo($arrUserInfo);
     return true;
 }
예제 #2
0
 public static function checkSession()
 {
     if (!self::$arrCommonAction['session']) {
         //是否被裁剪
         return true;
     }
     //都是为了速度统计
     $timer = null;
     if (class_exists('Ap_Registry')) {
         $timer = Ap_Registry::get('timer');
         if (is_object($timer)) {
             $timer->stop('processTime');
             $timer->start('requestTime');
         } else {
             $timer = null;
         }
     }
     $arrUserInfo = Saf_Base_Session::checkLogin();
     if ($timer) {
         $timer->start('processTime');
         $timer->stop('requestTime');
     }
     if ($arrUserInfo === false) {
         return false;
     }
     //开放写权限
     self::$arrDict[self::USER_INFO]['status'] = self::DICT_WRITE;
     $re = self::setUserInfo($arrUserInfo);
     Saf_Base_Hook::userInfoHook();
     //关闭写权限
     self::$arrDict[self::USER_INFO]['status'] = self::DICT_READ;
 }