Example #1
0
        public ActionResult Create(Lecture lecture, int CourseId)
        {
            CoursesRepository repository = new CoursesRepository();
            Course            course     = db.Courses.Where(c => c.CourseId == CourseId).SingleOrDefault();

            if (!repository.CheckIfLectureExists(lecture, CourseId))
            {
                ApplicationUser teacher  = db.Users.Find(course.Teacher.Id);
                List <Lecture>  lectures = course.Lectures.ToList();
                try
                {
                    lecture.Filename = Path.GetFileName(lecture.LectureFile.FileName);
                    string fileName = Path.Combine(Server.MapPath("~/Users/" + teacher.UserName + "/" + course.CourseName + "/Lectures/"), lecture.Filename);
                    lecture.LectureFile.SaveAs(fileName);

                    lecture.Path   = fileName;
                    lecture.Course = course;
                    db.Lectures.Add(lecture);
                    db.SaveChanges();
                    return(RedirectToAction("CourseHome", "Courses", course.CourseId));
                }
                catch (Exception e)
                {
                    throw e;
                }
            }
            else
            {
                TempData["Errormsg"] = "Lecture already exists! Try again";
                return(RedirectToAction("CourseHome", "Courses", course));
            }
        }