public async Task <ActionResult> IniciarSesion(LoginViewModel model, string returnUrl) { investicEntities db = new investicEntities(); if (ModelState.IsValid) { var user = await UserManager.FindAsync(model.UserName, model.Password); if (user != null) { await SignInAsync(user, model.RememberMe); string roluser = AspNetUsersRoles.GetRoles(AspNetUsers.GetUserId(user.UserName)).FirstOrDefault(); tblLogAcceso tbllogAcceso = new tblLogAcceso() { Usuario = model.UserName, IP = Request.UserHostAddress, Rol = roluser != ""? roluser:"******", FechaInicioSesion = System.DateTime.Now, FechaCierreSesion = System.DateTime.Now, Latitud = model.Latitud, Longitud = model.Longitud, Altitud = model.Altitud }; db.tblLogAcceso.Add(tbllogAcceso); db.SaveChanges(); ViewBag.mensaje = "no es"; IchamiloClient client = new IchamiloClient(); client.Open(); ChamiloUser chuser = client.getUserChamilo(model.UserName.Trim()); chuser.Password = model.Password; if (AspNetUsersRoles.IsUserInRole("Editor", user.UserName)) { return(RedirectToAction("Editor", "Admin", new { nombreu = user.UserName })); } else if (AspNetUsersRoles.IsUserInRole("Maestro", user.UserName)) { return(RedirectToAction("Maestro", "Admin", new { nombreu = user.UserName })); } else if (AspNetUsersRoles.IsUserInRole("Estudiante", user.UserName)) { return(RedirectToAction("Estudiante", "Admin", new { nombreu = user.UserName })); } else if (AspNetUsersRoles.IsUserInRole("Administrador", user.UserName)) { return(RedirectToAction("Index", "Seguimiento")); } else if (AspNetUsersRoles.IsUserInRole("Coordinador", user.UserName)) { return(RedirectToAction("Index", "Seguimiento")); } else if (AspNetUsersRoles.IsUserInRole("Contratista", user.UserName)) { return(RedirectToAction("Index", "Seguimiento")); } else if (AspNetUsersRoles.IsUserInRole("Administrator", user.UserName)) { return(RedirectToAction("Index", "Administrator")); } } else { ModelState.AddModelError("", "Usuario no registrado."); } } // If we got this far, something failed, redisplay form return(View(model)); }