Example #1
0
 public function getOwner()
 {
     if ($this->ownerId && !$this->owner) {
         $this->owner = User::find($this->ownerId);
     }
     return $this->owner;
 }
Example #2
0
 public function logoutAction()
 {
     $request = $this->getRequest();
     $token = $request->getCookie('token');
     $response = $this->getRedirectResponse('/');
     if ($token) {
         // найти по куки пользователя и занулить поле authToken
         $user = User::findOneBy(['authToken' => $request->getCookie('token')]);
         if ($user) {
             $user->authToken = null;
             $user->save();
         }
         // удалить куки
         $response->setCookie('token');
     }
     return $response;
 }
Example #3
0
 public function validate()
 {
     $errors = parent::validate();
     if (!isset($errors['email'])) {
         $user = User::findOneBy(['email' => $this->data['email']]);
         if ($user) {
             $errors['email'] = new Error('Пользователь с таким email уже существует');
         }
     }
     if (count($errors) == 0) {
         if ($this->data['password'] != $this->data['repeatPassword']) {
             $error = new Error('Пароли должны совпадать');
             $errors['password'] = $error;
             $errors['repeatPassword'] = $error;
         }
     }
     return $errors;
 }
Example #4
0
 public function validate()
 {
     $errors = parent::validate();
     if (empty($errors)) {
         $email = $this->getData()['email'];
         $password = $this->getData()['password'];
         $user = User::findOneBy(array('email' => $email));
         if (!$user) {
             $errors['email'] = new Error('Неправильно введен логин или пароль');
         } else {
             /** @var Security $security */
             $security = Application::getInstance()->getComponent('security');
             if ($user->password != $security->getPasswordHash($password, $user->salt)) {
                 $errors['email'] = new Error('Неправильно введен логин или пароль');
             }
         }
     }
     return $errors;
 }
 private function initRequestUser(Request $request)
 {
     $token = $request->getCookie('token') ? $request->getCookie('token') : '';
     if ($token != '') {
         $user = User::findOneBy(['authToken' => $token]);
         if ($user) {
             $request->setAttribute('user', $user);
         }
     }
 }