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); }