public ActionResult Login(LoginViewModel model, string returnUrl = null) { if (!ModelState.IsValid) { return(View(model)); } string _error_con = ""; Boolean _acceso = IsValid(model.Usuario, model.Password, ref _error_con); string return_action = ""; string return_controller = ""; if (_acceso) { if (returnUrl != null) { if (returnUrl.Length > 0) { string[] controller_action = returnUrl.Split('|'); return_action = controller_action[0].ToString(); return_controller = controller_action[1].ToString(); } } Usuario _usuario = (Usuario)Session[Constantes.NameSessionUser]; var identity = new ClaimsIdentity(new[] { new Claim(ClaimTypes.Name, _usuario._usu_nom_ape), }, DefaultAuthenticationTypes.ApplicationCookie); Authentication.SignIn(new AuthenticationProperties { IsPersistent = model.Recordar }, identity); if (return_action.Length == 0) { return(RedirectToAction("Index", "Home")); } else { /*validamos las opciones del menu de acceso*/ var data = new Data_Menu(); var items = data.navbarItems(_usuario._usu_id).ToList(); Session[Global._session_menu_user] = items; return(RedirectToAction(return_action, return_controller)); /*************************************/ } } else { if (_error_con == "1") { ModelState.AddModelError("", "El intento de conexión no fue correcto. Inténtelo de nuevo"); return(View(model)); } else { ModelState.AddModelError("", "Usuario y/o Password con incorrectos."); return(View(model)); } } }
public ActionResult Menu() { Usuario _usuario = (Usuario)Session[Constantes.NameSessionUser]; var data = new Data_Menu(); if (data == null) { return(View(new LoginViewModel())); } if (_usuario == null) { return(View(new LoginViewModel())); } var items = data.navbarItems(_usuario._usu_id).ToList(); return(PartialView("_Menu", items)); }