public void RegistrationUser(RegisterViewModel viewModel)
        {
            var newRole = new IdentityUserRole();

            var user = new BlogUser();

            user.Email    = viewModel.Email;
            user.UserName = viewModel.Email;

            if (UserManager.Users.Count() > 0)
            {
                newRole        = new IdentityUserRole();
                newRole.RoleId = RoleManager.FindByName("User").Id;
                newRole.UserId = user.Id;
                user.Roles.Add(newRole);
                UserManager.Create(user, viewModel.Password);
            }

            if (UserManager.Users.Count() == 0)
            {
                string[] roles = { "admin", "user", "corrector", "blocked" };

                for (int i = 0; i < roles.Length; i++)
                {
                    BlogRole nextRole = new BlogRole();
                    nextRole.Name = roles[i];
                    RoleManager.Create(nextRole);
                }
                newRole.RoleId = RoleManager.FindByName("admin").Id;
                newRole.UserId = user.Id;
                user.Roles.Add(newRole);
                UserManager.Create(user, viewModel.Password);
            }
        }
Exemple #2
0
        public async Task <ActionResult> Delete(string id)
        {
            BlogRole role = await RoleManager.FindByIdAsync(id);

            if (role != null)
            {
                IdentityResult result = await RoleManager.DeleteAsync(role);

                ViewBag.ErrorMessage = "";
            }
            return(RedirectToAction("Index"));
        }
Exemple #3
0
        public async Task <ActionResult> Edit(string id)
        {
            BlogRole role = await RoleManager.FindByIdAsync(id);

            if (role != null)
            {
                return(View(new EditRoleModel {
                    Id = role.Id, Name = role.Name, Description = role.Description
                }));
            }
            return(RedirectToAction("Index"));
        }
        public static void SeedRoles(RoleManager <BlogRole> roleManager)
        {
            if (!roleManager.RoleExistsAsync("USER").Result)
            {
                BlogRole role = new BlogRole();
                role.Name = "USER";
                IdentityResult roleResult = roleManager.CreateAsync(role).Result;
            }

            if (!roleManager.RoleExistsAsync("ADMIN").Result)
            {
                BlogRole role = new BlogRole();
                role.Name = "ADMIN";
                IdentityResult roleResult = roleManager.CreateAsync(role).Result;
            }
        }
Exemple #5
0
        public async Task <ActionResult> Edit(EditRoleModel model)
        {
            if (ModelState.IsValid)
            {
                BlogRole role = await RoleManager.FindByIdAsync(model.Id);

                if (role != null)
                {
                    role.Description = model.Description;
                    role.Name        = model.Name;
                    IdentityResult result = await RoleManager.UpdateAsync(role);

                    if (result.Succeeded)
                    {
                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        ModelState.AddModelError("", "Что-то пошло не так");
                    }
                }
            }
            return(View(model));
        }