public ActionResult removeTagFromLektion(HomeViewModel hvm, int valgtLektion) { var tag = _context._Tags.Include(l => l.Lektioner).FirstOrDefault(t => t.tagName == hvm.opretTag.tagName); var lektion =_context._Lektion.Include(t => t.Lektiontags).FirstOrDefault(l => l.Id == valgtLektion); lektion.Lektiontags.Remove(tag); _context.SaveChanges(); if(tag != null) { if(tag.Lektioner?.Count() == 0) { _context._Tags.Remove(tag); _context.SaveChanges(); } } return Json(HttpStatusCode.OK); }
public ActionResult connectTagToLektion(HomeViewModel hvm, int valgtLektion) { if(tagExist(hvm.opretTag.tagName)) { Tag tag = _context._Tags.SingleOrDefault(t => t.tagName == hvm.opretTag.tagName); var lektion = _context._Lektion.Find(valgtLektion); tag.Lektioner.Add(lektion); _context._Tags.Attach(tag); _context.SaveChanges(); return Json(HttpStatusCode.OK); } else { Tag tag = _context._Tags.Add(hvm.opretTag); _context._Lektion.FirstOrDefault(l => l.Id == valgtLektion).Lektiontags.Add(tag); _context.SaveChanges(); return Json(HttpStatusCode.OK); } }
[AcceptVerbs(HttpVerbs.Get | HttpVerbs.Post)] //Denne action tager både imod Get og Post public ActionResult Index(string valgtFag, int? valgtSemester, int? valgtLektion, HomeViewModel hvmodel) { HomeViewModel hvm = new HomeViewModel(); if (valgtFag == null && HttpContext.Request.HttpMethod == "GET") { valgtFag = _context._Fag.OrderBy(f => f.Fagnavn).First().friendlyFagNavn; } else if (HttpContext.Request.HttpMethod == "POST") { valgtFag = hvmodel.valgtFag.friendlyFagNavn; } if (valgtSemester == null) { try { valgtSemester = _context._Fag.FirstOrDefault(f => f.friendlyFagNavn == valgtFag).Semester.OrderByDescending(s => s.Id).Select(s => s.Id).First(); } catch (NullReferenceException) { return new HttpNotFoundResult(); } } //Sætter henter det valgte f*g fra parameteren try { hvm.valgtFag = _context._Fag.FirstOrDefault(f => f.friendlyFagNavn == valgtFag); } catch (NullReferenceException) { } //Henter data udfra det f*g man har valgt, og finder ud fra 'valgtSemester' parameteren de data om det valgteSemester try { hvm.valgtSemester = hvm.valgtFag.Semester.FirstOrDefault(s => s.Id == valgtSemester); } catch (Exception) { return new HttpNotFoundResult(); } //Henter lektionerne fra det f*g og det semester man har valgt try { hvm.relateredeLektioner = _context._Lektion.Where(l => l.SemesterId == hvm.valgtSemester.Id).Include(m => m.Lektionsbesvarelser).Include(m => m.Kodebesvarelser).ToList(); } catch (Exception) { return new HttpNotFoundResult(); } if (valgtLektion == null) { if (hvm.valgtSemester != null && hvm.valgtSemester.Lektioner.Select(l => l.Id).Count() > 0) { valgtLektion = hvm.valgtSemester.Lektioner.Select(l => l.Id).Last(); } } hvm.valgtLektion = _context._Lektion.Where(l => l.Id == valgtLektion).Include(m => m.Lektiontags).FirstOrDefault(); if (hvm.valgtLektion != null && _context._Lektionsfiler.Where(lf => lf.LektionsId == hvm.valgtLektion.Id).Count() > 0) { hvm.lektionsfiler = _context._Lektionsfiler.Where(lf => lf.LektionsId == hvm.valgtLektion.Id).ToList(); } if (hvm.valgtLektion != null && _context._Lektionsbesvarelser.Where(lf => lf.LektionsId == hvm.valgtLektion.Id).Count() > 0) { hvm.lektionsbesvarelser = _context._Lektionsbesvarelser.Where(lf => lf.LektionsId == hvm.valgtLektion.Id).ToList(); } if (hvm.valgtLektion != null && _context._Kode.Where(kb => kb.LektionsId == hvm.valgtLektion.Id).Count() > 0) { hvm.kodebesvarelser = _context._Kode.Where(kb => kb.LektionsId == hvm.valgtLektion.Id).ToList(); } //Indsætter data i dropdownlisten hvm.ddlSemestre = hvm.valgtFag.Semester.Select(x => new SelectListItem { Value = x.Id.ToString(), Text = x.Navn }).OrderByDescending(x => x.Value); return View(hvm); }
public ActionResult opretKodebesvarelse(HomeViewModel hvm, string fagnavn, int semesterid, int inLektionsid) { var lektion = _context._Lektion.Find(inLektionsid); lektion.Kodebesvarelser.Add(hvm.opretKodebesvarelse); Success(string.Format("<b>Kodebesvarelsen {0}</b> er blevet tilføjet lektionen", hvm.opretKodebesvarelse.Opgavenavn), true); _context._Lektion.Attach(lektion); _context.SaveChanges(); return RedirectToAction("Index", "Home", new { valgtFag = fagnavn, valgtSemester = semesterid, valgtLektion = inLektionsid }); }
public ActionResult redigerLektion(HomeViewModel hvm, string fagnavn, int semesterid, int lektionsId) { var lektion = _context._Lektion.Find(lektionsId); lektion.Lektionafholdelsestid = hvm.opretLektion.Lektionafholdelsestid; lektion.Lektionsbeskrivelse = hvm.opretLektion.Lektionsbeskrivelse; _context.SaveChanges(); Success(string.Format("<b>Lektion {0}</b> er blevet redigereret", hvm.opretLektion.Lektionnummer), true); return RedirectToAction("Index", "Home", new { valgtFag = fagnavn, valgtSemester = semesterid, valgtLektion = lektionsId }); }
public ActionResult opretLektion(HomeViewModel hvm, string fagnavn, int semesterid) { var semester = _context._Semester.Find(semesterid); if(hvm.lektiontags != null) { foreach (var item in hvm.lektiontags) { if (tagExist(item.tagName)) { var exisitingTag = _context._Tags.First(t => t.tagName == item.tagName); exisitingTag.Lektioner.Add(hvm.opretLektion); hvm.opretLektion.Lektiontags.Add(exisitingTag); } else { hvm.opretLektion.Lektiontags.Add(item); item.Lektioner.Add(hvm.opretLektion); } } } semester.Lektioner.Add(hvm.opretLektion); Success(string.Format("<b>Lektion {0}</b> er blevet tilføjet semesteret", hvm.opretLektion.Lektionnummer), true); _context._Semester.Attach(semester); _context.SaveChanges(); return Json(Url.Action("Index", "Home", new { valgtFag = fagnavn, valgtSemester = semesterid, valgtLektion = hvm.opretLektion.Id })); }