/// <summary> /// This method verifies the user permissions /// </summary> /// <param name="user">The user</param> private void CheckPermissions(User user) { if (user.IsAdmin) { UsersHelper.AddRoleToUser(user.Email, "Admin"); } else { UsersHelper.RemoveRoleToUser(user.Email, "Admin"); } if (user.CanCreate) { UsersHelper.AddRoleToUser(user.Email, "Create"); } else { UsersHelper.RemoveRoleToUser(user.Email, "Create"); } if (user.CanDelete) { UsersHelper.AddRoleToUser(user.Email, "Delete"); } else { UsersHelper.RemoveRoleToUser(user.Email, "Delete"); } if (user.CanEdit) { UsersHelper.AddRoleToUser(user.Email, "Edit"); } else { UsersHelper.RemoveRoleToUser(user.Email, "Edit"); } if (user.CanView) { UsersHelper.AddRoleToUser(user.Email, "View"); } else { UsersHelper.RemoveRoleToUser(user.Email, "View"); } }
public async Task <ActionResult> Create(User user) { if (ModelState.IsValid) { var response = UsersHelper.CreateUserASP(user.Email, user.Password); if (response) { if (user.IsAdmin) { UsersHelper.AddRoleToUser(user.Email, "Admin"); } if (user.CanCreate) { UsersHelper.AddRoleToUser(user.Email, "Create"); } if (user.CanDelete) { UsersHelper.AddRoleToUser(user.Email, "Delete"); } if (user.CanEdit) { UsersHelper.AddRoleToUser(user.Email, "Edit"); } if (user.CanView) { UsersHelper.AddRoleToUser(user.Email, "View"); } db.Users.Add(user); await db.SaveChangesAsync(); return(RedirectToAction("Index")); } ModelState.AddModelError(string.Empty, "Ya existe un usuario registrado con ese correo."); } return(View(user)); }