public ActionResult Login(string ReturnUrl) { var viewsModels = new LoginViewsModels { UrlRetorno = ReturnUrl }; return(View(viewsModels)); }
public ActionResult Login(LoginViewsModels viewsModels) { if (!ModelState.IsValid) { return(View(viewsModels)); } ; var usuario = db.Usuarios.FirstOrDefault( u => u.Login == viewsModels.Login); if (usuario == null) { ModelState.AddModelError("login", "falhou na missao"); return(View(viewsModels)); } if (usuario.Senha != Hash.GerarHash(viewsModels.Senha)) { ModelState.AddModelError("Senha", "Login ou senha incorreto"); return(View(viewsModels)); } var identity = new ClaimsIdentity(new[] { new Claim("Login", usuario.Login) }, "ApplicationCookie" ); Request.GetOwinContext().Authentication.SignIn(identity); if (!String.IsNullOrWhiteSpace(viewsModels.UrlRetorno) || Url.IsLocalUrl(viewsModels.UrlRetorno)) { return(Redirect(viewModel.UrlRetorno)); } else { return(RedirectToAction("index", "painel")); } }