示例#1
0
 public function send($email)
 {
     //Загружаем код пользователя по e-mail
     $userId = PsUser::instByMail($email)->getId();
     //Генерируем код
     $CODE = PsUserCode::passRecover()->generateAndSave($userId);
     //Отправляем письмо
     try {
         $content = $this->foldedEntity->fetchTpl(array('code' => $CODE->getCode()));
         PsMailSender::fastSend('Восстановление пароля на ' . ServerArrayAdapter::HTTP_HOST(), $content, $email);
     } catch (Exception $ex) {
         //Коды, высланные пользователю, нужно удалить
         $CODE->dropUnusedCodes($userId);
         throw $ex;
     }
 }
示例#2
0
 /**
  * Метод возвращает причину, по которой код не может быть использован.
  * Если код может быть использован, вернётся null.
  */
 public static function getCantUseReason($code)
 {
     return PsUserCode::passRecoverCode($code)->getCantUseReason();
 }