public IActionResult Edit(KorisnikDetaljiVM input) { if (!ModelState.IsValid) { GenerisiUlogeDetalji(input); return(View("Detalji", input)); } var lozinkaSalt = Util.Helper.GenerateSalt(); var lozinkaHash = Util.Helper.GenerateHash(lozinkaSalt, input.Lozinka); var korisnik = _context.Korisnici.Find(input.KorisnikId); if (korisnik != null) { korisnik.Ime = input.Ime; korisnik.Prezime = input.Prezime; korisnik.LozinkaHash = lozinkaHash; korisnik.LozinkaSalt = lozinkaSalt; korisnik.KorisnikStatus = input.KorisnikStatus; if (input.KorisnikSlika != null) { using var stream = new MemoryStream(); input.KorisnikSlika.CopyTo(stream); korisnik.KorisnikSlika = stream.ToArray(); } var UlogeIds = input.Uloge.Where(w => w.Selected).Select(s => s.Value); var permisije = _context.Permisije.Where(w => w.KorisnikId == korisnik.KorisnikId && w.PermisijaStatus == true); foreach (var permisija in permisije) { permisija.PermisijaStatus = false; } foreach (var id in UlogeIds) { Permisija p = new Permisija { DatumIzmjene = DateTime.Now, KorisnikId = korisnik.KorisnikId, UlogaId = int.Parse(id), PermisijaStatus = true }; _context.Permisije.Add(p); } _context.SaveChanges(); } return(RedirectToAction("Index")); }
public IActionResult Snimi(KorisnikDodajVM input) { if (!ModelState.IsValid) { GenerisiUloge(input); return(View("Dodaj", input)); } var lozinkaSalt = Util.Helper.GenerateSalt(); var lozinkaHash = Util.Helper.GenerateHash(lozinkaSalt, input.Lozinka); Korisnik noviKorisnik = new Korisnik() { Ime = input.Ime, Prezime = input.Prezime, KorisnickoIme = input.KorisnickoIme, LozinkaHash = lozinkaHash, LozinkaSalt = lozinkaSalt, KorisnikStatus = true }; using (var stream = new MemoryStream()) { input.KorisnikSlika.CopyTo(stream); noviKorisnik.KorisnikSlika = stream.ToArray(); } _context.Korisnici.Add(noviKorisnik); _context.SaveChanges(); var UlogeIds = input.Uloge.Where(w => w.Selected == true).Select(s => s.Value); foreach (var id in UlogeIds) { Permisija p = new Permisija { DatumIzmjene = DateTime.Now, KorisnikId = noviKorisnik.KorisnikId, UlogaId = int.Parse(id), PermisijaStatus = true }; _context.Permisije.Add(p); } _context.SaveChanges(); return(RedirectToAction("Index")); }