public static void SetLogiraniKorisnik(this HttpContext context, Korisnik korisnik, bool snimiUCookie = false) { MojContext db = context.RequestServices.GetService <MojContext>(); string stariToken = context.Request.GetCookieJson <string>(LogiraniKorisnik); if (stariToken != null) { AutorizacijskiTokenKorisnik obrisati = db.AutorizacijskiTokenKorisnik.FirstOrDefault(x => x.Vrijednost == stariToken); if (obrisati != null) { db.AutorizacijskiTokenKorisnik.Remove(obrisati); db.SaveChanges(); } } if (korisnik != null) { string token = Guid.NewGuid().ToString(); db.AutorizacijskiTokenKorisnik.Add(new AutorizacijskiTokenKorisnik { Vrijednost = token, KorisnikId = korisnik.KorisnikId, VrijemeEvidentiranja = DateTime.Now }); db.SaveChanges(); context.Response.SetCookieJson(LogiraniKorisnik, token); } }
public IActionResult Obrisi(string token) { AutorizacijskiTokenKorisnik obrisati = _db.AutorizacijskiTokenKorisnik.FirstOrDefault(x => x.Vrijednost == token); if (obrisati != null) { _db.AutorizacijskiTokenKorisnik.Remove(obrisati); _db.SaveChanges(); } return(RedirectToAction("Index")); }
public IActionResult Logout() { Korisnik nalog = HttpContext.GetLogiraniKorisnik(); KlijentT k = HttpContext.GetLogiraniKlijent(); if (nalog != null) { AutorizacijskiTokenKorisnik token = _db.AutorizacijskiTokenKorisnik.FirstOrDefault(x => x.KorisnikId == nalog.KorisnikId); _db.AutorizacijskiTokenKorisnik.Remove(token); _db.SaveChanges(); HttpContext.Response.RemoveCookie(Autentifikacija.LogiraniKorisnik); } if (k != null) { AutorizacijskiTokenKlijent token = _db.AutorizacijskiTokenKlijent.FirstOrDefault(x => x.KlijentId == k.KlijentID); _db.AutorizacijskiTokenKlijent.Remove(token); _db.SaveChanges(); HttpContext.Response.RemoveCookie(Autentifikacija.LogiraniKorisnik); } return(RedirectToAction("Index")); }