public async Task <IActionResult> CreateUserIndex(AdminToolsViewModel model) { var user = new Rock_MarketUser { FirstName = model.createUser.FirstName, LastName = model.createUser.LastName, UserName = model.createUser.Email, Email = model.createUser.Email, Address = model.createUser.Address, City = model.createUser.City, State = model.createUser.State }; var result = await userManager.CreateAsync(user, model.createUser.Password); if (result.Succeeded) { // This usermanager is for assigning a role to every new account created. userManager.AddToRoleAsync(user, "User").Wait(); return(RedirectToAction("Index")); } foreach (var error in result.Errors) { ModelState.AddModelError("", error.Description); } return(View("Index")); }
public async Task <IActionResult> CreateRoleIndex(AdminToolsViewModel model) { if (ModelState.IsValid) { // We just need to specify a unique role name to create a new role IdentityRole identityRole = new IdentityRole { Name = model.createRole.RoleName }; // Saves the role in the underlying AspNetRoles table IdentityResult result = await roleManager.CreateAsync(identityRole); if (result.Succeeded) { return(RedirectToAction("index", "admin")); } foreach (IdentityError error in result.Errors) { ModelState.AddModelError("", error.Description); } } return(View("Index", model)); }
public async Task <IActionResult> Index() { var users = userManager.Users; var usersAndRoles = new AdminToolsViewModel(); foreach (var user in userManager.Users) { var userRoles = await userManager.GetRolesAsync(user); DateTimeOffset?offset = user.LockoutEnd; // The way this LockoutEnd works is checking if theres a value, if there is one, it will convert it to local time. If not // then it will be just null. var model = new ListUsersViewModel { Id = user.Id, FirstName = user.FirstName, LastName = user.LastName, Phone = user.PhoneNumber, Address = user.Address, City = user.City, State = user.State, Email = user.Email, LockoutEnabled = user.LockoutEnabled, AccessFailedCount = user.AccessFailedCount, LockoutEnd = offset.HasValue ? offset.Value.LocalDateTime.ToString("yyyy-MM-ddThh:mm") : null, Roles = userRoles }; usersAndRoles.Users.Add(model); } usersAndRoles.Roles = roleManager.Roles.ToList(); return(View(usersAndRoles)); }
/// <summary> /// Загружает нужное представление /// </summary> /// <param name="typeView"></param> public void LoadView(ViewType typeView) { switch (typeView) { case ViewType.PRODUCTS: //загружаем вьюшку, ее вьюмодель Products viewP = new Products(); ProductsViewModel vmP = new ProductsViewModel(this); //связываем их м/собой viewP.DataContext = vmP; //отображаем this.OutputView.Content = viewP; break; case ViewType.ADMIN_TOOLS: AdminTools viewAT = new AdminTools(); AdminToolsViewModel vmAT = new AdminToolsViewModel(this); viewAT.DataContext = vmAT; this.OutputView.Content = viewAT; break; } }
public async Task <IActionResult> EditUserIndex(AdminToolsViewModel model) { var user = await userManager.FindByIdAsync(model.Users[0].Id); if (user == null) { ViewBag.ErrorMessage = $"User with Id = {model.Users[0].Id} cannot be found"; return(View("NotFound")); } else { user.Email = model.Users[0].Email; user.UserName = model.Users[0].Email; user.FirstName = model.Users[0].FirstName; user.LastName = model.Users[0].LastName; user.PhoneNumber = model.Users[0].Phone; user.Address = model.Users[0].Address; user.City = model.Users[0].City; user.State = model.Users[0].State; user.LockoutEnabled = model.Users[0].LockoutEnabled; user.AccessFailedCount = model.Users[0].AccessFailedCount; user.LockoutEnd = DateTimeOffset.Parse(model.Users[0].LockoutEnd); var result = await userManager.UpdateAsync(user); if (result.Succeeded) { return(RedirectToAction("Index")); } foreach (var error in result.Errors) { ModelState.AddModelError("", error.Description); } return(View("Index")); } }