public ActionResult AgregarPermisos(string Id) { int userID = Convert.ToInt32(Id); Session["PermisosUsuarioId"] = userID; Session["EsInicio"] = 1; PRE_UsuariosAplicacion _usuario = _unitOfWork.GetRepositoryInstance <PRE_UsuariosAplicacion>().GetFirstOrDefault(userID); if (_usuario == null) { return(RedirectToAction("UsuariosAplicacion", "Account")); } EditUserModel model = new EditUserModel(); model.UserId = _usuario.UsuarioId; model.Email = _usuario.Email; model.NombreCompleto = _usuario.NombreCompleto; model.UserName = _usuario.NombreUsuario; model.Empresas = _unitOfWork.GetRepositoryInstance <PRE_EmpresasUsuarioAplicacion>() .GetAllRecordsIQueryable() .Where(eu => eu.UsuarioID == _usuario.UsuarioId) .Select(e => e.EmpresaID) .ToArray(); ViewData["EmpresaItems"] = FTPresupuestoProvider.GetAllEmpresas(); return(View(model)); }
public ActionResult EditUsuarioAplicacion(string Id) { int userID = Convert.ToInt32(Id); PRE_UsuariosAplicacion _usuario = _unitOfWork.GetRepositoryInstance <PRE_UsuariosAplicacion>().GetFirstOrDefault(userID); if (_usuario == null) { return(RedirectToAction("UsuariosAplicacion", "Account")); } EditUserModel model = new EditUserModel(); model.UserId = _usuario.UsuarioId; model.Email = _usuario.Email; model.NombreCompleto = _usuario.NombreCompleto; model.UserName = _usuario.NombreUsuario; //model.Empresas = _unitOfWork.GetRepositoryInstance<PRE_EmpresasUsuarioAplicacion>() // .GetAllRecordsIQueryable() // .Where(eu => eu.UsuarioID == _usuario.UsuarioId) // .Select(e => e.EmpresaID) // .ToArray(); //ViewData["EmpresaItems"] = FTPresupuestoProvider.GetAllEmpresas(); model.UserType = Roles.GetRolesForUser(_usuario.NombreUsuario)[0]; // ESTE NO SE USA EN EL VIEW model.UserTypes = Roles.GetRolesForUser(model.UserName); ViewData["RolesItems"] = GetRoles(); return(View(model)); }
public ActionResult EditUsuarioAplicacion(EditUserModel model) { if (ModelState.IsValid) { try { model.UserTypes = CheckBoxListExtension.GetSelectedValues <string>("RolesUnBound"); PRE_UsuariosAplicacion _usuario = _unitOfWork.GetRepositoryInstance <PRE_UsuariosAplicacion>().GetFirstOrDefault(model.UserId); _usuario.Email = model.Email; _usuario.NombreCompleto = model.NombreCompleto; string[] rolesDelusuario = Roles.GetRolesForUser(model.UserName); foreach (string item in rolesDelusuario) { Roles.RemoveUserFromRole(model.UserName, item); } foreach (string item in model.UserTypes) { Roles.AddUserToRole(model.UserName, item); } if (!string.IsNullOrWhiteSpace(model.Password)) { bool changePasswordSucceeded; try { string tokenCambio = WebSecurity.GeneratePasswordResetToken(model.UserName); changePasswordSucceeded = WebSecurity.ResetPassword(tokenCambio, model.Password); } catch (Exception) { changePasswordSucceeded = false; } if (!changePasswordSucceeded) { ViewBag.ErrorMessage = "El password a cambiar es incorrecto"; } } _unitOfWork.GetRepositoryInstance <PRE_UsuariosAplicacion>().Update(_usuario); _unitOfWork.SaveChanges(); return(RedirectToAction("UsuariosAplicacion", "Account")); } catch (MembershipCreateUserException e) { ViewBag.ErrorMessage = ErrorCodeToString(e.StatusCode); } } else { ViewBag.ErrorMessage = "La información es incompleta"; } // If we got this far, something failed, redisplay form ViewData["RolesItems"] = GetRoles(); return(View(model)); }
public ActionResult Login(LoginModel model, string returnUrl) { if (ModelState.IsValid) { ////RESETEAR PASSWORD DE UN USUARIO //string prt = WebSecurity.GeneratePasswordResetToken("Admin"); //WebSecurity.ResetPassword(prt, "Admin1.0"); ////************************************** if (WebSecurity.Login(model.UserName, model.Password, persistCookie: false)) { PRE_UsuariosAplicacion _users = _unitOfWork.GetRepositoryInstance <PRE_UsuariosAplicacion>() .GetFirstOrDefaultByParameter(u => u.NombreUsuario.ToUpper() == model.UserName.ToUpper()); if (_users == null) { ModelState.AddModelError("", "El usuario no existe"); ViewBag.ErrorMessage = "El usuario no existe"; WebSecurity.Logout(); return(View(model)); } else { if (!_users.UsuarioActivo) { ModelState.AddModelError("", "El usuario esta marcado como baja, no tiene acceso al sistema"); ViewBag.ErrorMessage = "El usuario esta marcado como baja, no tiene acceso al sistema"; WebSecurity.Logout(); return(View(model)); } } return(Redirect(returnUrl ?? "/")); } else { ModelState.AddModelError("", "El nombre de Usuario o password son incorrectos"); ViewBag.ErrorMessage = "El nombre de Usuario o password son incorrectos"; } } // If we got this far, something failed, redisplay form return(View(model)); }