public function passwordResetAjax()
{
ipRequest()->mustBePost();
$validateForm = FormHelper::getPasswordResetForm1();
$errors = $validateForm->validate(ipRequest()->getPost());
$username = ipRequest()->getPost('username');
if (empty($errors)) {
$user = \Ip\Internal\Administrators\Service::getByEmail($username);
if (!$user) {
$user = \Ip\Internal\Administrators\Service::getByUsername($username);
}
if ($user) {
\Ip\Internal\Administrators\Service::sendResetPasswordLink($user['id']);
} else {
$errors['username'] = __('Following administrator doesn\'t exist', 'Ip-admin', false);
}
}
if (empty($errors)) {
$answer = array('status' => 'success', 'redirectUrl' => ipActionUrl(array('sa' => 'Admin.passwordResetInfo')));
} else {
$answer = array('status' => 'error', 'errors' => $errors);
}
$response = new \Ip\Response\Json($answer);
return $response;
}