Exemple #1
0
 public static function loadByEmail($email, $password)
 {
     $user = Data::loadByEmail($email);
     if (!isset($user)) {
         return null;
     }
     if (!Util\Security::isValidPassword($password, $user->getPassword())) {
         // legacy security
         if ($user->getPassword() != Util\Security::encrypt($password)) {
             return null;
         }
         $user->setPassword(Util\Security::encryptPassword($password));
         \Rebond\Core\User\Data::savePassword($user);
         return $user;
     }
     return $user;
 }
Exemple #2
0
 public function forgotPassword()
 {
     $signedUser = $this->app->user();
     // auth
     if (Util\Auth::isAuth($signedUser)) {
         header('Location: /profile');
         exit;
     }
     $form = new \Rebond\Core\User\Form($signedUser);
     $tpl = new Util\Template(Util\Template::MODULE, ['app', 'User']);
     // action
     // request
     $requestForgotPassword = Util\Converter::toString('requestForgotPassword', 'post');
     if (isset($requestForgotPassword)) {
         $email = Util\Converter::toString('email', 'post');
         if ($email == '') {
             Util\Session::set(Util\Lang::lang('siteError', 'emptyEmailAddress'));
         } else {
             $user = \Rebond\Core\User\Data::loadByEmail($email);
             if (isset($user)) {
                 Util\Mail::resetPassword($this->app->site()->getTitle(), $user);
                 return $tpl->render('forgot-password-send');
             } else {
                 Util\Session::set('siteError', Util\Lang::lang('emailAddressNotFound'));
             }
         }
     }
     // reset password form
     $reset = Util\Converter::toString('reset');
     if (isset($reset)) {
         $user = \Rebond\Core\UserSecurity\Service::getUserBySecure($reset, \Rebond\Core\UserSecurity\Model::RESET);
         if (isset($user)) {
             $form = new \Rebond\Core\User\Form($user);
             // reset password
             $resetPassword = Util\Converter::toString('resetPassword', 'post');
             if (isset($resetPassword)) {
                 $form->changePassword('/profile', false);
             }
             $tpl = new Util\Template(Util\Template::MODULE, ['app', 'User']);
             $tpl->set('item', $form);
             $tpl->set('checkCurrentPassword', false);
             return $tpl->render('password-change');
         }
     }
     $tpl = new Util\Template(Util\Template::MODULE, ['app', 'User']);
     $tpl->set('item', $form);
     return $tpl->render('forgot-password');
 }
Exemple #3
0
 public function register()
 {
     $userGadget = new \Own\App\User\Gadget($this->app);
     $register = $userGadget->register();
     $this->signedUser = $this->app->user();
     if ($this->signedUser->getId() != 0) {
         $player = \Own\Bus\Player\Data::loadByUserId($this->signedUser->getId());
         if ($player == null) {
             $player = \Own\Bus\Player\Service::create($this->signedUser);
         }
         $player->setActive(true);
         $player->save();
     }
     $email = Util\Converter::toString('email', 'post');
     if (isset($email)) {
         $user = \Rebond\Core\User\Data::loadByEmail($email);
     }
     // view
     $this->setTpl();
     // layout
     $this->tplLayout->set('column1', $register);
     // template
     $this->tplMaster->set('layout', $this->tplLayout->render('layout-center'));
     return $this->tplMaster->render('tpl-default');
 }