public async Task <IActionResult> RemoveUserFromProject(ManageProjectUsersViewModel model)
 {
     foreach (var userId in model.SelectedUsers)
     {
         if (!await _projectService.IsUserOnProject(userId, model.Project.Id))
         {
             await _projectService.RemoveUserFromProject(userId, model.Project.Id);
         }
     }
     return(RedirectToAction("RemoveUserFromProject"));
 }
Пример #2
0
        public async Task <IActionResult> AssignUsers(ManageProjectUsersViewModel model)
        {
            if (!User.IsInRole("Demo")) //Prevent Demo User from
            {
                if (ModelState.IsValid)
                {
                    if (model.SelectedUsers != null)
                    {
                        var currentMembers = await _context.Projects.Include(p => p.ProjectUsers)
                                             .FirstOrDefaultAsync(p => p.Id == model.Project.Id);

                        List <string> memberIds = currentMembers.ProjectUsers.Select(u => u.UserId).ToList();

                        foreach (string id in memberIds)
                        {
                            await _PSProjectService.RemoveUserFromProject(id, model.Project.Id);
                        }

                        foreach (string id in model.SelectedUsers)
                        {
                            await _PSProjectService.AddUserToProject(id, model.Project.Id);
                        }
                        return(RedirectToAction("Details", "Projects", new { id = model.Project.Id }));
                        //return RedirectToAction(name of(BlogPosts), new { id = post.BlogId }); Default statement that returns to all projects: return RedirectToAction("Index", "Projects");
                    }
                    else
                    {
                        Debug.WriteLine("****ERROR****");
                        //Send an error message back
                    }
                }
                return(View(model));
            }
            else
            {
                TempData["DemoLockout"] = "Your changes have not been saved. To make changes to the database, please log in as a full user.";
                return(RedirectToAction("MyProjects", "Projects"));
            }
        }