Esempio n. 1
0
 private static function _ForgottenPass($hash, $email)
 {
     global $smarty, $_userFPass;
     $smarty->assign('title', 'Восстановление пароля');
     $userInfo = $_userFPass->GetByEmail($email);
     if (empty($userInfo)) {
         throw new Exception(ERROR_MAIL);
     }
     $mail = new Mail();
     if ($mail->CompareUniqueSignature($hash, $email, $userInfo[$_userFPass->ToPrfxNm(UserForgottenPass::PASS_FLD)]) && CheckDateDiff($userInfo[$_userFPass->ToPrfxNm(UserForgottenPass::DATE_FLD)])) {
         AuthorizedUser::Authorize($email, $_userFPass->AcceptNewPassword($userInfo), true);
     } else {
         throw new Exception(ERROR_FORGOTTEN_PASS);
     }
     $smarty->assign('successMsg', 'Новый пароль принят!')->assign('isGoAcc', true);
 }