/**
  * prepareExecute
  *
  * @return  void
  */
 protected function prepareExecute()
 {
     parent::prepareExecute();
     $this->view['email'] = $this->input->getEmail('email');
     $this->view['token'] = $this->input->get('token');
     // Check email and token
     $user = User::get(array('email' => $this->view['email']));
     if ($user->isNull()) {
         $this->backToConfirm(Translator::translate($this->langPrefix . 'user.not.found'));
         return;
     }
     if (!UserHelper::verifyPassword($this->view['token'], $user->reset_token)) {
         $this->backToConfirm('Invalid Token');
         return;
     }
 }
Exemple #2
0
 /**
  * authenticate
  *
  * @param Credential $credential
  *
  * @return  integer
  */
 public function authenticate(Credential $credential)
 {
     $loginName = $this->warder->getLoginName();
     if (!$credential->{$loginName} || !$credential->password) {
         $this->status = Authentication::EMPTY_CREDENTIAL;
         return false;
     }
     /** @var UserData $user */
     $user = User::get(array($loginName => $credential->{$loginName}));
     if ($user->isNull()) {
         $this->status = Authentication::USER_NOT_FOUND;
         return false;
     }
     if (!UserHelper::verifyPassword($credential->password, $user->password)) {
         $this->status = Authentication::INVALID_PASSWORD;
         return false;
     }
     $credential->bind($user);
     $this->status = Authentication::SUCCESS;
     return true;
 }
 /**
  * doSave
  *
  * @param DataInterface $data
  *
  * @return bool
  *
  * @throws ValidateFailException
  */
 protected function doSave(DataInterface $data)
 {
     $user = User::get(['email' => $this->data['email']]);
     if (!UserHelper::verifyPassword($this->data['token'], $user->activation)) {
         throw new ValidateFailException(Translator::translate($this->langPrefix . 'message.activate.fail'));
     }
     $user->activation = '';
     $user->blocked = 0;
     User::save($user);
     return true;
 }