Пример #1
0
        public ActionResult RefuseRequest(int id)
        {
            TeamRequests teamRequests = db.TeamRequests.Find(id);

            db.TeamRequests.Remove(teamRequests);
            db.SaveChanges();
            return(RedirectToAction("Index", "Home"));
        }
Пример #2
0
        public ActionResult DeleteConfirmed(int id)
        {
            TeamRequests teamRequests = db.TeamRequests.Find(id);

            db.TeamRequests.Remove(teamRequests);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #3
0
 public ActionResult Edit([Bind(Include = "Id,Date,FromId,ToId,TeamId")] TeamRequests teamRequests)
 {
     if (ModelState.IsValid)
     {
         db.Entry(teamRequests).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(teamRequests));
 }
Пример #4
0
        // GET: TeamRequests/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            TeamRequests teamRequests = db.TeamRequests.Find(id);

            if (teamRequests == null)
            {
                return(HttpNotFound());
            }
            return(View(teamRequests));
        }
Пример #5
0
        public ActionResult AcceptRequest(int id)
        {
            var UserId = User.Identity.GetUserId();

            StudentsInTeams StudentsInTeams = new StudentsInTeams();
            TeamRequests    Request         = db.TeamRequests.SingleOrDefault(x => x.Id == id);

            StudentsInTeams.TeamId    = Request.TeamId;
            StudentsInTeams.StudentId = UserId;
            Request.Accept            = true;
            db.StudentsInTeams.Add(StudentsInTeams);
            db.SaveChanges();
            return(RedirectToAction("UsersInTeams/" + Request.TeamId, "Teams"));
        }
Пример #6
0
        public ActionResult AddToTeam(StudentsInTeams StudentsInTeams, int id, int StudentId)
        {
            var PersonalInformation = db.PersonalInformations.Where(x => x.StudentId == StudentId).FirstOrDefault <PersonalInformation>();

            var UserId = User.Identity.GetUserId();

            bool hasValue;

            if (PersonalInformation == null)
            {
                hasValue = false;
            }
            else
            {
                hasValue = true;
            }
            //Get the course that containing the team
            int CourseId = db.Teams.Where(x => x.Id == id).Select(x => x.CourseId).FirstOrDefault();
            //students registered course
            var students = db.Enrollment.Where(x => x.CoursesId == CourseId).Select(x => x.StudentId).ToList();
            //Teams in the course
            var Teams = db.Teams.Where(x => x.CourseId == CourseId).Select(x => x.Id).ToList();
            //StudentsInTeams in the course
            var StudentsInTeam = db.StudentsInTeams.Where(x => Teams.Contains(x.TeamId)).Select(x => x.StudentId).ToList();
            //Get num of students in the team
            int studentsInTeam = db.StudentsInTeams.Where(x => x.TeamId == id).Count();
            //Get the team limit
            int GroupNum = db.Courses.Where(x => x.Id == CourseId).Select(x => x.GroupNum).FirstOrDefault();

            //check the team limit
            if (studentsInTeam == GroupNum)
            {
                ModelState.AddModelError("TeamLimit", "this team is complite");
            }
            //check if this student not registered in the course
            else if (!hasValue || !students.Contains(PersonalInformation.UserId))
            {
                ModelState.AddModelError("IsStudentRegistered", "this student not registered in the course");
            }
            //check if this student is in team
            else if (StudentsInTeam.Contains(PersonalInformation.UserId))
            {
                ModelState.AddModelError("IsInTeam", "this student is in team");
            }


            TeamRequests TeamRequests = new TeamRequests();

            if (ModelState.IsValid)
            {
                TeamRequests.TeamId = id;
                TeamRequests.FromId = UserId;
                TeamRequests.Date   = DateTime.Now;
                TeamRequests.ToId   = PersonalInformation.UserId;
                TeamRequests.Accept = false;
                db.TeamRequests.Add(TeamRequests);
                db.SaveChanges();
                return(RedirectToAction("MYTeams/" + id));
            }
            return(View(StudentsInTeams));
        }