示例#1
0
文件: client.php 项目: 453111208/bbc
 public function call($method, $parameters = array(), $appId = 'default', $identity = "")
 {
     if ($identity) {
         switch ($identity) {
             case "buyer":
                 pamAccount::setAuthType('sysuser');
                 $oauth['auth_type'] = pamAccount::getAuthType('sysuser');
                 break;
             case "seller":
                 pamAccount::setAuthType('sysshop');
                 $oauth['auth_type'] = pamAccount::getAuthType('sysshop');
                 break;
             case "shopadmin":
                 pamAccount::setAuthType('desktop');
                 $oauth['auth_type'] = pamAccount::getAuthType('desktop');
                 break;
         }
         $oauth['account_id'] = pamAccount::getAccountId();
         $oauth['account_name'] = pamAccount::getLoginName();
     }
     $parameters['oauth'] = $oauth;
     if ($this->distribute()) {
         if ($appId != 'default') {
             $appId = $appId;
         }
         return $this->callOutside($method, $parameters, $appId);
     } else {
         return $this->callInternal($method, $parameters);
     }
 }
示例#2
0
 public function login()
 {
     if (pamAccount::isEnableVcode('desktop')) {
         if (!base_vcode::verify($this->app->app_id, $_POST['verifycode'])) {
             $msg = app::get('desktop')->_('验证码不正确!');
             $this->__loginLog($msg);
             $url = url::route('shopadmin', array('ctl' => 'passport', 'act' => 'index', 'url' => input::get('redirect'), 'msg' => urlencode($msg)));
             echo "<script>location ='{$url}'</script>";
             exit;
         }
     }
     try {
         kernel::single('desktop_passport')->login(input::get());
         $msg = app::get('desktop')->_('验证成功');
         $this->__loginLog($msg);
     } catch (Exception $e) {
         $msg = $e->getMessage();
         $this->__loginLog($msg);
         $url = url::route('shopadmin', array('ctl' => 'passport', 'act' => 'index', 'url' => input::get('redirect'), 'msg' => urlencode($msg)));
         echo "<script>location ='{$url}'</script>";
         exit;
     }
     $params['member_id'] = pamAccount::getAccountId();
     $params['uname'] = pamAccount::getLoginName();
     foreach (kernel::servicelist('desktop_login_listener') as $service) {
         $service->listener_login($params);
     }
     if (input::get('remember') === "true") {
         setcookie('pam_passport_basic_uname', input::get('uname'), time() + 365 * 24 * 3600, '/');
     } else {
         setcookie('pam_passport_basic_uname', '', 0, '/');
     }
     if ($_COOKIE['autologin'] > 0) {
         kernel::single('base_session')->set_cookie_expires($_COOKIE['autologin']);
         //如果自动登录,设置cookie过期时间,单位:分
     }
     if ($_COOKIE['S']['SIGN']['AUTO'] > 0) {
         $minutes = 10 * 24 * 60;
         kernel::single('base_session')->set_cookie_expires($minutes);
     }
     header('Location:' . base64_decode(str_replace('%2F', '/', urldecode(input::get('redirect')))) . $url);
     exit;
 }
示例#3
0
 /**
  * 用于指示商家操作者的标志
  * @return array 商家登录用户信息
  */
 public function operator()
 {
     return array('user_type' => 'seller', 'op_id' => pamAccount::getAccountId(), 'op_account' => pamAccount::getLoginName());
 }