public Boolean SacuvajKategorije(KursManageVM vm, IEnumerable <int> nove, IEnumerable <int> postojece) { if (postojece != null) { // ima postojecih kategorija u db za ovaj kurs foreach (var id in nove.ToArray().Except(postojece.ToArray())) { _ctx.KategorizacijaDbSet.Add(new Kategorizacija { KursId = vm.KursId, PotkategorijaId = id }); } foreach (var id in postojece.ToArray().Except(nove.ToArray())) { Kategorizacija kategorija = _ctx.KategorizacijaDbSet.Where(w => w.Kurs.Id == vm.KursId && w.Potkategorija.Id == id).Single(); _ctx.KategorizacijaDbSet.Remove(kategorija); } } else { // nema postojecih kategorija u db za ovaj kurs (novi kurs) foreach (var id in nove.ToArray()) { _ctx.KategorizacijaDbSet.Add(new Kategorizacija { KursId = vm.KursId, PotkategorijaId = id }); } } return(true); }
public ActionResult KategorijaPage(int kategorijaId) { // Listaj latest kurseve List <Potkategorija> PodKategorije = ctx.PotkategorijaDbSet.Where(x => x.KategorijaId == kategorijaId).ToList(); List <Kategorizacija> Kategorizacija = new List <Kategorizacija>(); foreach (var pk in PodKategorije) { foreach (var kk in ctx.KategorizacijaDbSet.Where(x => x.PotkategorijaId == pk.Id).ToList()) { Kategorizacija obj = kk; if (obj != null) { Kategorizacija.Add(obj); } } } List <Kurs> podaci = new List <Kurs>(); List <Front_Kurs> Model = new List <Front_Kurs>(); foreach (var k in Kategorizacija) { Kurs obj = ctx.KursDbSet.Where(x => x.Id == k.KursId && !x.Status.ToString().Equals("ARCHIVED")).FirstOrDefault(); if (obj != null) { podaci.Add(obj); } } List <Kurs> bezduplikata = podaci.Distinct().OrderBy(x => x.DatumKreiranja).ToList(); string nazivKategorije = ctx.KategorijaDbSet.Where(x => x.Id == kategorijaId).FirstOrDefault().Naziv; Model.AddRange(bezduplikata.Select(x => new Front_Kurs { Id = x.Id, KursNaziv = x.Naziv, Instruktor = x.Instruktor.AppUser.Ime, KursOpis = x.Opis, KursDatumKreiranja = x.DatumKreiranja, KursKursNivo = x.Nivo, KursVideoId = x.VideoId, KursThumbImagePutanja = "http://img.youtube.com/vi/" + x.VideoId + "/mqdefault.jpg", KursStatus = x.Status, KursPolazniciCount = ctx.StudentKursDbSet.Where(y => y.Kurs.Id == x.Id).Count() })); ViewBag.NazivKategorije = nazivKategorije; return(View(Model)); }