Пример #1
0
 public ActionResult AddUserToDashboard(AddUserToDashboardViewModel model)
 {
     if (ModelState.IsValid)
     {
         Dashboard findDashboard = _context.Dashboards.SingleOrDefault(p => p.Id == model.DashboardIdSected);
         if (findDashboard != null)
         {
             AppUser findUser = _context.AppUsers.SingleOrDefault(u => u.Id == model.UserIdSected);
             if (findUser != null)
             {
                 findDashboard.AppUsers.Add(findUser);
                 _context.SaveChanges();
             }
         }
     }
     //Заповнити всі пости
     model.ListDashboards = _context.Dashboards.Select(p => new ListBoxItems()
     {
         Id = p.Id, Name = p.Title
     });
     //Заповнити всі юзери
     model.ListUsers = _context.AppUsers.Select(p => new ListBoxItems()
     {
         Id = p.Id, Name = p.UserProfile.LastName + " " + p.UserProfile.FirstName
     });
     return(View(model));
 }
Пример #2
0
        //[Authorize(Roles = "Admin")]
        public ActionResult AddUserToDashboard()
        {
            var model     = new AddUserToDashboardViewModel();
            var userEmail = HttpContext.User.Identity.Name;
            var user      = _context.AppUsers.SingleOrDefault(u => u.Email == userEmail);

            model.IsCompanyAdmin = (user.Roles.Where(r => r.Name == "CompanyAdmin")).Count() == 1;
            model.IsSuperAdmin   = (user.Roles.Where(r => r.Name == "SuperAdmin")).Count() == 1;
            model.IsUser         = (user.Roles.Where(r => r.Name == "User")).Count() == 1;

            if (model.IsUser)
            {
                return(View("~/Views/Shared/Errors/Error_403.cshtml"));
            }

            var usersList = _context.AppUsers.ToList();

            List <AppUser> candidatsReadOnly = new List <AppUser>();

            foreach (var item in usersList)
            {
                var role = item.Roles.ToList();
                if (role[0].Name == "User")
                {
                    item.UserProfile = _context.UserProfiles.SingleOrDefault(x => x.Id == item.Id);
                    candidatsReadOnly.Add(item);
                }
            }

            var companyROList = candidatsReadOnly.Select(r => new ListBoxItems()
            {
                Id = r.Id, Name = r.UserProfile.FirstName + " " + r.UserProfile.LastName
            });

            model.ListDashboards = model.IsSuperAdmin
                ? _context.Dashboards.Select(p => new ListBoxItems()
            {
                Id = p.Id, Name = p.Title
            })
                : _context.Dashboards.Where(x => x.IdOwner == user.Id).Select(p => new ListBoxItems()
            {
                Id = p.Id, Name = p.Title
            });

            model.ListUsers = companyROList;

            return(View(model));
        }