function restore_pwd() { $answer = array(); //ответ //считываем данные $login = null; if (isset($_POST["login"])) { $login = $_POST["login"]; $user = Users::getUser(array("login" => $login)); if (empty($user)) { //если пользователь не найден //возвращаем текст ошибки $answer["error"] = array("msg" => "Пользователь не найден", "field" => "login"); return json_encode($answer); } $pwd = Crypt::password_generate(6); $error = Users::setUserPassword(array("login" => $login, "pwd1" => $pwd, "pwd2" => $pwd)); if ($error !== Users::ERROR_NOT) { //в случае ошибки возвращаем текст ошибки $answer["error"]["field"] = "submit"; $answer["error"]["msg"] = Users::errorMsg($error); return $answer; } if (!mail($login, "Пароль на MIR-NDV", "Ваш новый пароль: " . $pwd)) { $answer["error"] = array("msg" => "Извините, но не удалось отправить письмо на Ваш почтовый ящик " . $login); return json_encode($answer); } $answer["success"] = array("msg" => "На Ваш почтовый ящик " . $login . " отправлено письмо с новым паролем "); return json_encode($answer); } else { //если uid не задан //возвращаем текст ошибки $answer["error"] = array("msg" => "Пользователь не указан", "field" => "login"); return json_encode($answer); } $answer["error"] = array("msg" => "Извините, но не удалось восстановить пароль. Попробуйте повторить еще раз."); return json_encode($answer); }