loginAndRemember() public method

Persists a login for the given user, with the "remember" flag.
public loginAndRemember ( Cartalyst\Sentinel\Users\UserInterface $user ) : Cartalyst\Sentinel\Users\UserInterface | boolean
$user Cartalyst\Sentinel\Users\UserInterface
return Cartalyst\Sentinel\Users\UserInterface | boolean
 public function postRegister(CredentialsRequest $request)
 {
     if ($user = $this->sentinel->registerAndActivate($this->getRequestData($request))) {
         $this->sentinel->loginAndRemember($user);
         $this->setResponseData($user->toArray());
     } else {
         $this->setErrorData("Can't create user");
     }
     return $this->responseJson();
 }
 /**
  * @return mixed
  */
 public function postLogin()
 {
     /*
      * Login Facebook
      * Người dùng login bằng javascriptSDK sau đó sẽ gửi short token-key lên server.
      * Server sẽ dùng short token-key này để lấy long-lived token-key
      * Tiếp tục dùng long-lived token key để lấy thông tin của người dùng: id-facebook + email + name....
      * Kiểm tra người dùng trên hệ thống. Lưu ý đây là người dùng facebook. Sẽ link sang user-sentinel bằng user_id.
      * Nếu người dùng chưa tồn tại trên hệ thống thì sẽ tạo 1 user mới để đăng nhập. User này do sentinel quản lý. Email/pass word do mình tự generate ra.
      * Nếu người dùng tồn tại trên hệ thống rồi => lấy user-sentinel => login-sentinel
      */
     try {
         $token = $this->laravelFacebookSdk->getJavaScriptHelper()->getAccessToken();
         if (!$token) {
             // User hasn't logged in using the JS SDK yet
             $this->setErrorData('not_authorized');
         } else {
             // Get long-lived access token
             $longLiveAccessToken = $this->facebookHelper->extendToken($token);
             // Use long-lived access token above to get UserData
             $facebookUser = $this->facebookHelper->getSocialUserByLongLivedAccessToken($longLiveAccessToken);
             // Check current facebook user existed in user database
             $userSentinel = $this->facebookUser->isFacebookUserExisted($facebookUser);
             if (!$userSentinel) {
                 $credentials = $facebookUser->toArray();
                 $credentials['password'] = md5(microtime());
                 /** @var \Modules\IzCustomer\Entities\User $userSentinel */
                 $userSentinel = $this->sentinel->registerAndActivate($credentials);
                 // update relationship
                 $userSentinel->facebook()->save($facebookUser);
             }
             // Login and remember to sentinel
             $this->sentinel->loginAndRemember($userSentinel);
             // set output
             $this->setResponseData($userSentinel->toArray());
         }
     } catch (FacebookSDKException $e) {
         $this->setResponseCode(400);
         $this->setErrorData($e->getMessage());
     }
     return $this->responseJson();
 }
Beispiel #3
0
 /**
  * Persists a login for the given user, with the "remember" flag.
  *
  * @param  User $user
  *
  * @return User|bool
  */
 public function loginAndRemember(User $user)
 {
     return $this->sentinel->loginAndRemember($user);
 }
 /**
  * Persists a login for the given user, with the "remember" flag.
  *
  * @param \Cartalyst\Sentinel\Users\UserInterface $user
  * @return \Cartalyst\Sentinel\Users\UserInterface|bool 
  * @static 
  */
 public static function loginAndRemember($user)
 {
     return \Cartalyst\Sentinel\Sentinel::loginAndRemember($user);
 }