Ip\Internal\Admin\SiteController::passwordResetAjax PHP Method

passwordResetAjax() public method

public passwordResetAjax ( )
    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;
    }