// GET: SyllabusContents/Create
        public ActionResult Create(int?syllabusId)
        {
            ViewBag.Subjects = new SelectList(db.Subjects, "Id", "Name");
            var newItem = new SyllabusContent {
                Syllabus = db.Syllabi.Include(s => s.Specialty).FirstOrDefault(s => s.Id == syllabusId)
            };

            return(View(newItem));
        }
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            SyllabusContent syllabusContent = db.SyllabusContents.Include(s => s.Syllabus).FirstOrDefault(s => s.Id == id);

            db.SyllabusContents.Remove(syllabusContent);
            await db.SaveChangesAsync();

            return(RedirectToAction("Details", "Syllabus", new { id = syllabusContent.Syllabus.Id }));
        }
        public async Task <ActionResult> Edit(SyllabusContent syllabusContent)
        {
            if (ModelState.IsValid)
            {
                db.Entry(syllabusContent).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Details", "Syllabus", new { id = syllabusContent.Syllabus.Id }));
            }
            return(View(syllabusContent));
        }
        public async Task <ActionResult> Create(SyllabusContent syllabusContent)
        {
            if (ModelState.IsValid)
            {
                syllabusContent.Subject  = db.Subjects.Find(syllabusContent.Subject.Id);
                syllabusContent.Syllabus = db.Syllabi.Find(syllabusContent.Syllabus.Id);
                db.SyllabusContents.Add(syllabusContent);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }

            return(View(syllabusContent));
        }
        // GET: SyllabusContents/Details/5
        public async Task <ActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SyllabusContent syllabusContent = await db.SyllabusContents.FindAsync(id);

            if (syllabusContent == null)
            {
                return(HttpNotFound());
            }
            return(View(syllabusContent));
        }
        // GET: SyllabusContents/Delete/5
        public async Task <ActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SyllabusContent syllabusContent = db.SyllabusContents.Include(s => s.Syllabus).FirstOrDefault(s => s.Id == id);

            if (syllabusContent == null)
            {
                return(HttpNotFound());
            }
            return(View(syllabusContent));
        }
        // GET: SyllabusContents/Edit/5
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ViewBag.Subjects = new SelectList(db.Subjects, "Id", "Name");
            SyllabusContent syllabusContent = await db.SyllabusContents
                                              .Include(sc => sc.Syllabus).Include(sc => sc.Subject)
                                              .FirstOrDefaultAsync(sc => sc.Id == id);

            if (syllabusContent == null)
            {
                return(HttpNotFound());
            }
            return(View(syllabusContent));
        }