public ActionResult Login(LoginViewModel model) { var jsonViewModel = new AjaxLoginViewModel(); try { string json = JsonConvert.SerializeObject(model); var endpoint = url; jsonViewModel = Utilities.RestAPIHelper <AjaxLoginViewModel> .Submit(json, Method.POST, endpoint); if (jsonViewModel.Data != null) { jsonViewModel.SetValuesLogin(true, jsonViewModel.BearerToken, jsonViewModel.Data, "Login"); } else { jsonViewModel.SetValuesLogin(false, jsonViewModel.BearerToken, jsonViewModel.Data, jsonViewModel.Message); } } catch (Exception ex) { jsonViewModel.SetValuesLogin(false, "", null, String.Format("Failed\\nMessage: {0}", ex.GetBaseException().Message)); } return(Json(jsonViewModel)); }
public ActionResult AjaxLogin(AjaxLoginViewModel model, string returnUrl) { try { if (!ModelState.IsValid) { if (!Request.IsAjaxRequest()) { return(View()); } return(Json(new { update_section = new UpdateSectionJsonModel { name = "login-form", html = this.RenderPartialViewToString("AjaxLogin", model) } // goto_section = "shipping_method" })); } // This doesn't count login failures towards account lockout // To enable password failures to trigger account lockout, change to shouldLockout: true var loginResult = _customerService.ValidateCustomer(model.AjaxEmail, model.AjaxPassword); switch (loginResult) { case CustomerLoginResults.Successful: { var customer = _customerService.GetCustomerByEmail(model.AjaxEmail); //migrate shopping cart _workContext.CurrentCustomer = customer; customer.LastActivityDateUtc = DateTime.UtcNow; customer.LastLoginDateUtc = DateTime.UtcNow; _customerService.UpdateCustomer(customer); //sign in new customer _authenticationService.SignIn(customer, model.AjaxRememberMe); GutterCleanRequestModel Requestmodel = _httpContext.Session["GutterCleanRequestModel"] as GutterCleanRequestModel; if (Requestmodel == null) { return(Json(new { redirect = Url.RouteUrl("GutterCleanRequest") })); } else { return(Json(new { redirect = Url.RouteUrl("ProcessPayment") })); } } case CustomerLoginResults.CustomerNotExist: ModelState.AddModelError("", "Customer Not Exist"); break; case CustomerLoginResults.NotActive: ModelState.AddModelError("", "Customer Not Active"); break; case CustomerLoginResults.NotRegistered: ModelState.AddModelError("", "Not Registered"); break; case CustomerLoginResults.WrongPassword: default: ModelState.AddModelError("", "Wrong Credentials"); break; } //If we got this far, something failed, redisplay form return(Json(new { error = 1, message = "" })); } catch (Exception exc) { return(Json(new { error = 1, message = exc.Message })); } return(View()); }