public ActionResult Login(LoginViewModel model, string ReturnUrl = "") { string message = ""; var v = services.context.tbl_Users.Where(a => a.Email == model.Email).FirstOrDefault(); if (v != null) { if (!v.isEmailVerifield) { ViewBag.Message = "Please verify your email from your email address first"; return(View()); } if (PublicHelper.IsStringSameAsHash(model.Password, v.Password)) { int timeout = model.RememberMe ? 500 : 20; // 525600 min = 1 year var ticket = new FormsAuthenticationTicket(model.Email, model.RememberMe, timeout); string encrypted = FormsAuthentication.Encrypt(ticket); var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encrypted); cookie.Expires = DateTime.Now.AddMinutes(timeout); cookie.HttpOnly = true; Response.Cookies.Add(cookie); if (v.isAdmin == true) { //TempData["CurrentUser"] = model.Email; return(RedirectToAction("Index", "Admin")); } else { if (Url.IsLocalUrl(ReturnUrl)) { return(Redirect(ReturnUrl)); } else { return(RedirectToAction("Index", "Home")); } } } else { message = "Invalid credential provided"; } } else { message = "Invalid credential provided"; } ViewBag.Message = message; return(View()); }