Exemplo n.º 1
0
        public virtual ActionResult ForgotPassword(ForgotPasswordViewModel model)
        {
            if (ModelState.IsValid)
            {
                var result = new ExecutionResults();
                ProviderResolver<UserNotificationProvider>.Get.Provider.NotifyPasswordReset(model.UserName, result);

                if (this.IsJsonRequest())
                    return Json(new { success = result.Success, message = result.ToHtmlString() });

                if (result.Success)
                    return RedirectToAction(MVC.Account.Login());

                for (var e = 0; e < result.Messages.Count; e++)
                {
                    ModelState.AddModelError(e.ToString(CultureInfo.InvariantCulture), result.Messages[e].Message);
                }
                return View(model);
            }
            if (this.IsJsonRequest())
                return Json(new { success = false, errors = ModelState.ToJson() });

            return View(model); //modelstate already populated
        }