public async Task <IActionResult> DodajSkoluUceniku(SkoleLista models, string id) { var vjerouciteljUserName = HttpContext.User.Identity.Name; var vjeroucitelj = await userManager.FindByEmailAsync(vjerouciteljUserName); var vjerouciteljId = vjeroucitelj.Id; var skoleUcenika = _context.SkoleUcenika.Where(s => s.UcenikId == id).ToList(); var skole = _context.Skole.Where(s => s.SkolaId.ToString() == models.IsSelected).ToList(); var skoleOvogVjeroucitelja = _context.Skole.Where(s => s.VjerouciteljId == vjerouciteljId).ToList(); if (!skoleOvogVjeroucitelja.Any()) { return(RedirectToAction("Create", "Skola")); } else { foreach (var skolaUcenik in skoleUcenika) { _context.Remove(skolaUcenik); } if (models.IsSelected != null) { var tempSkola = new SkolaUcenik { NazivSkole = skole.Select(n => n.NazivSkole).SingleOrDefault(), VjerouciteljId = vjerouciteljId, UcenikId = id, SkolaId = skole.Select(n => n.SkolaId).SingleOrDefault() }; _context.Add(tempSkola); } _context.SaveChanges(); return(RedirectToAction("EditUser", new { id })); } }
public async Task <IActionResult> DodajSkoluUceniku(string userId) { ViewBag.userId = userId; var vjerouciteljUserName = HttpContext.User.Identity.Name; var vjeroucitelj = await userManager.FindByEmailAsync(vjerouciteljUserName); var vjerouciteljId = vjeroucitelj.Id; var skole = _context.Skole.Where(s => s.VjerouciteljId == vjerouciteljId).ToList(); var skoleUcenikaOvogVjeroucitelja = _context.SkoleUcenika .Where(s => s.UcenikId == userId && s.VjerouciteljId == vjerouciteljId) .Select(s => s.NazivSkole).ToList(); var skoleUcenikaDrugihVjeroucitelja = _context.SkoleUcenika .Where(s => s.UcenikId == userId && s.VjerouciteljId != vjerouciteljId) .Select(s => s.NazivSkole).ToList(); if (skole == null) { ViewBag.Error = $"Niste unijeli svoje škole."; return(NotFound()); } else { var tempLista = new List <SkolaUcenikView>(); var tempSkoleLista = new SkoleLista(); foreach (var skola in skole) { var skolaUcenik = new SkolaUcenikView { SkolaId = skola.SkolaId, NazivSkole = skola.NazivSkole, VjerouciteljId = vjerouciteljId }; if (skoleUcenikaOvogVjeroucitelja.Contains(skola.NazivSkole)) { tempSkoleLista.IsSelected = null; if (tempLista.Contains(skolaUcenik)) { continue; } else { tempLista.Add(skolaUcenik); } } else { tempSkoleLista.IsSelected = null; if (skoleUcenikaDrugihVjeroucitelja.Any()) { continue; } else { tempLista.Add(skolaUcenik); } } } tempSkoleLista.Skole = tempLista; return(View(tempSkoleLista)); } }