public IActionResult Users()
        {
            DatabaseContext context   = this.DatabaseInitialization();
            var             userRoles = new List <AdminUsersView>();
            var             userStore = new UserStore <AppUser>(context);


            //Get all the usernames
            foreach (var user in userStore.Users)
            {
                var model = new AdminUsersView
                {
                    UserName    = user.UserName,
                    PhoneNumber = user.PhoneNumber,
                    Email       = user.Email,
                    FirstName   = user.FirstName,
                    LastName    = user.LastName,
                    Role        = new List <string>()
                                  //Role = _userManager.GetRolesAsync(user).ToString()
                };


                var roles = _userManager.GetRolesAsync(user).Result;
                foreach (var role in roles)
                {
                    model.Role.Add(role);
                }
                userRoles.Add(model);
            }

            return(View(userRoles));
        }
        public async Task <IActionResult> EditUser(string username)
        {
            var editUser = await _userManager.FindByNameAsync(username);

            var User = new AdminUsersView();

            User.PhoneNumber = editUser.PhoneNumber;
            User.Email       = editUser.Email;
            User.FirstName   = editUser.FirstName;
            User.LastName    = editUser.LastName;

            User.Roles = new List <SelectListItem>()
            {
                new SelectListItem {
                    Text = "Administrator", Value = "Admin", Selected = _userManager.IsInRoleAsync(editUser, "Admin").Result
                },
                new SelectListItem {
                    Text = "Użytkownik", Value = "User", Selected = _userManager.IsInRoleAsync(editUser, "User").Result
                },
                new SelectListItem {
                    Text = "Pracownik", Value = "Employee", Selected = _userManager.IsInRoleAsync(editUser, "Employee").Result
                }
            };

            return(PartialView("EditUser", User));
        }
Example #3
0
        public IActionResult CreateUser()
        {
            var userEdit = new AdminUsersView();

            userEdit.Roles = new List <SelectListItem>()
            {
                new SelectListItem {
                    Text = "Administrator", Value = "Admin"
                },
                new SelectListItem {
                    Text = "Użytkownik", Value = "User"
                },
                new SelectListItem {
                    Text = "Wykładowca", Value = "Lecturer"
                },
                new SelectListItem {
                    Text = "Student", Value = "Student"
                },
                new SelectListItem {
                    Text = "Pracownik", Value = "Worker"
                }
            };

            return(PartialView("CreateUser", userEdit));
        }
Example #4
0
        public IActionResult EditUser(string userName)
        {
            AppUser editUser = _userManager.FindByNameAsync(userName).Result;
            var     userEdit = new AdminUsersView();

            userEdit.PhoneNumber = editUser.PhoneNumber;
            userEdit.Email       = editUser.Email;
            userEdit.UserName    = editUser.UserName;

            userEdit.Roles = new List <SelectListItem>()
            {
                new SelectListItem {
                    Text = "Administrator", Value = "Admin", Selected = _userManager.IsInRoleAsync(editUser, "Admin").Result
                },
                new SelectListItem {
                    Text = "Użytkownik", Value = "User", Selected = _userManager.IsInRoleAsync(editUser, "User").Result
                },
                new SelectListItem {
                    Text = "Wykładowca", Value = "Lecturer", Selected = _userManager.IsInRoleAsync(editUser, "Lecturer").Result
                },
                new SelectListItem {
                    Text = "Student", Value = "Student", Selected = _userManager.IsInRoleAsync(editUser, "Student").Result
                },
                new SelectListItem {
                    Text = "Pracownik", Value = "Worker", Selected = _userManager.IsInRoleAsync(editUser, "Worker").Result
                }
            };

            return(PartialView("EditUser", userEdit));
        }
Example #5
0
        protected void AdminUsersView_Load(object sender, EventArgs e)
        {
            DataTable dt = new DataTable();

            dt.Columns.Add("UserID", typeof(string));
            dt.Columns.Add("Full Name", typeof(string));
            dt.Columns.Add("User Name", typeof(string));
            dt.Columns.Add("User Level", typeof(int));
            List <Users> allUserList = new List <Users>();

            using (DataContext db = new DataContext())
            {
                allUserList = (from u in db.Users select u).ToList();
            }
            if (allUserList.Count != 0)
            {
                foreach (Users u in allUserList)
                {
                    dt.Rows.Add(u.UserID, u.FullName, u.UserName, u.Level.GetLevel());
                }
                AdminUsersView.DataSource = dt;
                AdminUsersView.DataBind();
            }
            else
            {
                AdminUsersView.DataSource = null;
                AdminUsersView.DataBind();
            }
        }
        public ActionResult Users()
        {
            if (!User.IsInRole("Dev"))
            {
                return(Redirect(Url.Action <HomeController>(x => x.Home()) + "?warning=" + Server.UrlEncode("You don't have access to that page")));
            }
            var m = new AdminUsersView();

            m.Users = DataAccess.GetUsers();

            return(View("Users", m));
        }
Example #7
0
        public IActionResult Profile(string userName)
        {
            AppUser showUser = _userManager.FindByNameAsync(userName).Result;
            var     userShow = new AdminUsersView();

            userShow.PhoneNumber = showUser.PhoneNumber;
            userShow.Email       = showUser.Email;
            userShow.UserName    = showUser.UserName;
            // userShow.Name = showUser;

            return(View("Profile", userShow));
        }
        public async Task <IActionResult> DeleteUser(AdminUsersView model)
        {
            AppUser editUser = _userManager.FindByNameAsync(model.UserName).Result;

            editUser.Email       = model.Email;
            editUser.PhoneNumber = model.PhoneNumber;
            editUser.FirstName   = model.FirstName;
            editUser.LastName    = model.LastName;

            await _userManager.DeleteAsync(editUser);

            return(RedirectToAction("Users", "Admin"));
        }
        public IActionResult CreateUser()
        {
            var userEdit = new AdminUsersView();

            userEdit.Roles = new List <SelectListItem>()
            {
                new SelectListItem {
                    Text = "Administrator", Value = "Admin"
                },
                new SelectListItem {
                    Text = "Pracownik", Value = "Employee"
                }
            };

            return(View("CreateUser", userEdit));
        }
Example #10
0
        public IActionResult Users()
        {
            if (!User.IsInRole("Admin"))
            {
                return(RedirectToAction("Index", "Home"));
            }

            USOSContext context   = this.initContext();
            var         userRoles = new List <AdminUsersView>();
            var         userStore = new UserStore <AppUser>(context);

            foreach (var user in userStore.Users)
            {
                var r = new AdminUsersView
                {
                    Email       = user.Email,
                    PhoneNumber = user.PhoneNumber,
                    UserName    = user.UserName,
                    Role        = new List <string>()
                };
                if (_userManager.IsInRoleAsync(user, "Student").Result)
                {
                    var list = context.StudentGroup.Where(x => x.appUser == user).Include(x => x.group).ToList();
                    foreach (StudentGroup s in list)
                    {
                        r.groups += s.group.Name + " ";
                    }
                }

                var    roles   = _userManager.GetRolesAsync(user).Result;
                string roleStr = "";
                foreach (var role in roles)
                {
                    r.Role.Add(role);
                }
                userRoles.Add(r);
            }

            return(View(userRoles));
        }
Example #11
0
        public async Task <IActionResult> EditUser(AdminUsersView model)
        {
            var roleManager = _provider.GetRequiredService <RoleManager <IdentityRole> >();

            AppUser editUser = _userManager.FindByNameAsync(model.UserName).Result;

            editUser.Email       = model.Email;
            editUser.PhoneNumber = model.PhoneNumber;
            editUser.FirstName   = model.FirstName;
            editUser.LastName    = model.LastName;
            if (model.Role != null)
            {
                IList <string> userRoles = _userManager.GetRolesAsync(editUser).Result;
                foreach (string roleName in userRoles)
                {
                    if (!model.Role.Contains(roleName))
                    {
                        await _userManager.RemoveFromRoleAsync(editUser, roleName);
                    }
                }
                foreach (string role in model.Role)
                {
                    var roleCheck = roleManager.RoleExistsAsync(role).Result;
                    if (roleCheck)
                    {
                        var isInRole = await _userManager.IsInRoleAsync(editUser, role);

                        if (!isInRole)
                        {
                            await _userManager.AddToRoleAsync(editUser, role);
                        }
                    }
                }
            }
            var result = _userManager.UpdateAsync(editUser).Result;

            return(RedirectToAction("Users", "Admin"));
        }
Example #12
0
        public async Task <IActionResult> CreateUser(AdminUsersView model)
        {
            if (ModelState.IsValid)
            {
                AppUser newUser = _userManager.FindByNameAsync(model.UserName).Result;
                if (newUser == null)
                {
                    newUser             = new AppUser();
                    newUser.UserName    = model.UserName;
                    newUser.PhoneNumber = model.PhoneNumber;

                    newUser.Email = model.Email;

                    newUser.FirstName = model.FirstName;
                    newUser.LastName  = model.LastName;

                    var resultCreate = await _userManager.CreateAsync(newUser, model.Password);

                    TempData["AddUser"] = "******";
                    if (resultCreate.Succeeded)
                    {
                        var roleManager = _provider.GetRequiredService <RoleManager <IdentityRole> >();
                        if (model.Role != null)
                        {
                            foreach (string role in model.Role)
                            {
                                var roleCheck = roleManager.RoleExistsAsync(role).Result;
                                if (roleCheck)
                                {
                                    var isInRole = await _userManager.IsInRoleAsync(newUser, role);

                                    if (!isInRole)
                                    {
                                        await _userManager.AddToRoleAsync(newUser, role);
                                    }
                                }
                            }
                        }
                        return(RedirectToAction("Users", "Admin"));
                    }
                    else
                    {
                        foreach (var error in resultCreate.Errors)
                        {
                            ModelState.AddModelError("", error.Description);
                        }
                    }
                }
            }

            model.Roles = new List <SelectListItem>()
            {
                new SelectListItem {
                    Text = "Administrator", Value = "Admin"
                },
                new SelectListItem {
                    Text = "Pracownik", Value = "Employee"
                }
            };

            return(View("Users", model));
        }