Ejemplo n.º 1
0
 /**
  * @return User
  */
 public function getUser()
 {
     if ($this->_user === null) {
         $this->_user = User::findUserByEmail($this->email);
     }
     return $this->_user;
 }
Ejemplo n.º 2
0
 /** @inheritdoc */
 public function rules()
 {
     return ['emailTrim' => ['email', 'filter', 'filter' => 'trim'], 'emailRequired' => ['email', 'required'], 'emailPattern' => ['email', 'email'], 'emailExist' => ['email', 'exist', 'targetClass' => $this->module->modelMap['User'], 'message' => Yii::t('users', 'There is no user with this email address')], 'emailUnconfirmed' => ['email', function ($attribute) {
         $this->user = User::findUserByEmail($this->email);
         if ($this->user !== null && $this->module->enableConfirmation && !$this->user->isConfirmed) {
             $this->addError($attribute, Yii::t('users', 'You need to confirm your email address'));
         }
         if ($this->user->isBlocked) {
             $this->addError($attribute, Yii::t('users', 'Your account has been blocked'));
         }
     }], 'passwordRequired' => ['password', 'required'], 'passwordLength' => ['password', 'string', 'min' => 6]];
 }
Ejemplo n.º 3
0
 /**
  * Tries to find user or create a new one.
  *
  * @param Account $account
  *
  * @return User|bool False when can't create user.
  */
 protected static function fetchUser(Account $account)
 {
     $user = User::findUserByEmail($account->email);
     if (null !== $user) {
         return $user;
     }
     $user = Yii::createObject(['class' => User::className(), 'scenario' => User::SCENARIO_CONNECT, 'username' => $account->username, 'email' => $account->email]);
     if (!$user->validate(['email'])) {
         $account->email = null;
     }
     if (!$user->validate(['username'])) {
         $account->username = null;
     }
     return $user->create() ? $user : false;
 }