/**
  * Saves a new session record for a given user.
  *
  * @param UserModel $user
  * @param string    $sessionToken
  *
  * @return string The session's UID.
  */
 public function storeSessionToken(UserModel $user, $sessionToken)
 {
     $sessionRecord = new SessionRecord();
     $sessionRecord->userId = $user->id;
     $sessionRecord->token = $sessionToken;
     $sessionRecord->save();
     return $sessionRecord->uid;
 }
Ejemplo n.º 2
0
 /**
  * Handles a successful login for a user.
  *
  * @param UserModel $user
  * @param           $sessionToken
  * @return bool
  */
 public function handleSuccessfulLogin(UserModel $user, $sessionToken)
 {
     $userRecord = $this->_getUserRecordById($user->id);
     $userRecord->lastLoginDate = $user->lastLoginDate = DateTimeHelper::currentUTCDateTime();
     $userRecord->lastLoginAttemptIPAddress = craft()->request->getUserHostAddress();
     $userRecord->invalidLoginWindowStart = null;
     $userRecord->invalidLoginCount = $user->invalidLoginCount = null;
     $userRecord->verificationCode = null;
     $userRecord->verificationCodeIssuedDate = null;
     $sessionRecord = new SessionRecord();
     $sessionRecord->userId = $user->id;
     $sessionRecord->token = $sessionToken;
     $userRecord->save();
     $sessionRecord->save();
     return $sessionRecord->uid;
 }