public IActionResult AddTeam(TeamEditor model)
        {
            var project = _context.Projects.SingleOrDefault(p => p.Name == model.SelectedProject);

            if (model.TeamId == null)
            {
                var newTeam = new Team
                {
                    Name    = model.TeamName,
                    Project = project
                };
                _context.Teams.Add(newTeam);
            }
            else
            {
                var teamToUpdate = _context.Teams
                                   .Include(t => t.Project)
                                   .Include(t => t.Members)
                                   .SingleOrDefault(u => u.Id == model.TeamId);
                foreach (var student in teamToUpdate.Members)
                {
                    student.Project = project;
                }
                teamToUpdate.Name    = model.TeamName;
                teamToUpdate.Project = project;
                _context.Update(teamToUpdate);
            }
            _context.SaveChanges();
            return(RedirectToAction("AllTeams", "Teams"));
        }
        public IActionResult AddUser(UserEditor model)
        {
            var team = _context.Teams.Include(t => t.Project).SingleOrDefault(t => t.Name == model.SelectedTeam);

            if (model.UserId == null)
            {
                var newUser = new User
                {
                    Name    = model.UserName,
                    Team    = team,
                    Project = team?.Project,
                    Course  = model.UserCourse,
                    Group   = model.UserGroup
                };
                _context.Users.Add(newUser);
            }
            else
            {
                var userToUpdate = _context.Users.Find(model.UserId);
                userToUpdate.Name    = model.UserName;
                userToUpdate.Team    = team;
                userToUpdate.Project = team?.Project;
                userToUpdate.Course  = model.UserCourse;
                userToUpdate.Group   = model.UserGroup;
                _context.Update(userToUpdate);
            }
            _context.SaveChanges();
            return(RedirectToAction("AllUsers", "Users"));
        }
        public IActionResult AddProject(ProjectEditor model)
        {
            var teams = new List <Team>();

            model.SelectedTeams?.ForEach(t => teams.Add(_context.Teams.Include(p => p.Project).Include(u => u.Members).SingleOrDefault(i => i.Name == t)));
            var members = new List <User>();

            foreach (var team in teams)
            {
                foreach (var student in team.Members)
                {
                    members.Add(student);
                }
            }
            if (model.ProjectId == null)
            {
                var newProject = new Project
                {
                    Name                 = model.ProjectName,
                    ShortDescription     = model.ShortDescription,
                    Teams                = teams,
                    Theme                = model.Theme,
                    GoalDescription      = model.GoalDescription,
                    ProblemDescription   = model.ProblemDescription,
                    RolesDescription     = model.RolesDescription,
                    ResultDescription    = model.ResultDescription,
                    Curator              = model.Curator,
                    CustomerOrganization = model.CustomerOrganization,
                    CustomerContacts     = model.CustomerContacts,
                    Participants         = members
                };
                _context.Projects.Add(newProject);
                _context.SaveChanges();
                return(RedirectToAction("AllProjects", "Projects"));
            }
            else
            {
                var projectToUpdate = _context.Projects.Include(p => p.Teams).SingleOrDefault(p => p.Id == model.ProjectId);
                projectToUpdate.Name                 = model.ProjectName;
                projectToUpdate.ShortDescription     = model.ShortDescription;
                projectToUpdate.Teams                = teams;
                projectToUpdate.Theme                = model.Theme;
                projectToUpdate.GoalDescription      = model.GoalDescription;
                projectToUpdate.ProblemDescription   = model.ProblemDescription;
                projectToUpdate.RolesDescription     = model.RolesDescription;
                projectToUpdate.ResultDescription    = model.ResultDescription;
                projectToUpdate.Curator              = model.Curator;
                projectToUpdate.CustomerOrganization = model.CustomerOrganization;
                projectToUpdate.CustomerContacts     = model.CustomerContacts;
                projectToUpdate.Participants         = members;
                _context.Update(projectToUpdate);
                _context.SaveChanges();
                return(RedirectToAction("ProjectPage", "Projects", new { id = model.ProjectId }));
            }
        }
Esempio n. 4
0
 public void PlayerSave(Player player)
 {
     _context.Update(player);
     _context.SaveChanges();
 }
Esempio n. 5
0
 public void TeamSave(Team team)
 {
     _context.Update(team);
     _context.SaveChanges();
 }