public async Task <IActionResult> Login(LoginViewModel model, string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; if (ModelState.IsValid) { // This doesn't count login failures towards account lockout // To enable password failures to trigger account lockout, set lockoutOnFailure: true //var guestHelper = new GuestHelpers(); var guestType = _PasswordHelpers.GetGuestTypeFromPassword(model.Password); var claims = new List <Claim>(); if (guestType != GuestType.None) { await _PasswordHelpers.WriteGuestTypeCookieAsync(guestType, claims, HttpContext); return(RedirectToLocal(returnUrl)); } else { ModelState.AddModelError(string.Empty, "Invalid login attempt."); return(View()); } } // If we got this far, something failed, redisplay form return(View()); }