Esempio n. 1
0
        public ActionResult Edit(CourseCreateEdit newCourse)
        {
            if (newCourse.Name == "" || newCourse.Number_of_Hours < 0 || newCourse.Number_of_Classes < 0 || newCourse.Description == null)
            {
                return(View(newCourse));
            }
            List <Person>  studentsList = new List <Person>();
            List <Person>  teachersList = new List <Person>();
            List <Program> programList  = new List <Program>();
            List <Blog>    blogsList    = new List <Blog>();

            for (int i = 0; i < newCourse.Chosen_Teachers.Count(); i++)
            {
                if (newCourse.Chosen_Teachers[i])
                {
                    string id      = newCourse.Teachers[i].Id;
                    Person teacher = db.Users.Where(p => p.Id == id).FirstOrDefault();
                    teachersList.Add(teacher);
                }
            }
            for (int i = 0; i < newCourse.Chosen_Programs.Count(); i++)
            {
                if (newCourse.Chosen_Programs[i])
                {
                    int     id      = newCourse.Programs[i].ID;
                    Program program = db.Program.Where(p => p.ID == id).FirstOrDefault();
                    programList.Add(program);
                }
            }
            for (int i = 0; i < newCourse.Chosen_Blogs.Count(); i++)
            {
                if (newCourse.Chosen_Blogs[i])
                {
                    int  id   = newCourse.Blogs[i].ID;
                    Blog blog = db.Blog.Where(p => p.ID == id).FirstOrDefault();
                    blogsList.Add(blog);
                }
            }

            var course = db.Course.Where(c => c.ID == newCourse.ID).First();

            if (course == null)
            {
                return(HttpNotFound());
            }
            course.Name              = newCourse.Name;
            course.Description       = newCourse.Description;
            course.BasePart          = newCourse.Base_Part;
            course.Date_and_Time     = newCourse.Date_and_Time;
            course.Number_of_Classes = newCourse.Number_of_Classes;
            course.Number_of_Hours   = newCourse.Number_of_Hours;
            course.Report_Type       = newCourse.Report_Type;
            course.Teachers.Clear();
            course.Programs.Clear();
            course.Blogs.Clear();
            course.Teachers = teachersList;
            course.Programs = programList;
            course.Blogs    = blogsList;
            db.SaveChanges();
            return(RedirectToAction("Index", "Courses"));
        }
Esempio n. 2
0
        public ActionResult Create(CourseCreateEdit newCourse)
        {
            if (newCourse.Name == null || newCourse.Number_of_Hours < 0 || newCourse.Number_of_Classes < 0 || newCourse.Description == null)
            {
                return(View(newCourse));
            }
            List <Person>  studentsList = new List <Person>();
            List <Person>  teachersList = new List <Person>();
            List <Program> programList  = new List <Program>();
            List <Blog>    blogsList    = new List <Blog>();

            for (int i = 0; i < newCourse.Chosen_Teachers.Count(); i++)
            {
                if (newCourse.Chosen_Teachers[i])
                {
                    string id      = newCourse.Teachers[i].Id;
                    Person teacher = db.Users.Where(p => p.Id == id).FirstOrDefault();
                    teachersList.Add(teacher);
                }
            }
            for (int i = 0; i < newCourse.Chosen_Programs.Count(); i++)
            {
                if (newCourse.Chosen_Programs[i])
                {
                    int     id      = newCourse.Programs[i].ID;
                    Program program = db.Program.Where(p => p.ID == id).FirstOrDefault();
                    programList.Add(program);
                }
            }

            for (int i = 0; i < newCourse.Chosen_Blogs.Count(); i++)
            {
                if (newCourse.Chosen_Blogs[i])
                {
                    int  id   = newCourse.Blogs[i].ID;
                    Blog blog = db.Blog.Where(p => p.ID == id).FirstOrDefault();
                    blogsList.Add(blog);
                }
            }

            var course = new Course {
                Name              = newCourse.Name,
                Description       = newCourse.Description,
                BasePart          = newCourse.Base_Part,
                Date_and_Time     = newCourse.Date_and_Time,
                Number_of_Classes = newCourse.Number_of_Classes,
                Number_of_Hours   = newCourse.Number_of_Hours,
                Report_Type       = newCourse.Report_Type,
                Teachers          = teachersList,
                Programs          = programList,
                Blogs             = blogsList
            };

            if (newCourse.Chosen_Programs.ToArray().Contains(true))
            {
                course.Grade = newCourse.Chosen_Programs.ToList().IndexOf(true) + 3;
            }

            db.Course.Add(course);
            db.SaveChanges();
            return(RedirectToAction("Index", "Courses"));
        }