Esempio n. 1
0
        public static void SetLogiraniKlijent(this HttpContext context, KlijentT korisnik, bool snimiUCookie = false)
        {
            MojContext db = context.RequestServices.GetService <MojContext>();

            string stariToken = context.Request.GetCookieJson <string>(LogiraniKorisnik);

            if (stariToken != null)
            {
                AutorizacijskiTokenKlijent obrisati = db.AutorizacijskiTokenKlijent.FirstOrDefault(x => x.Vrijednost == stariToken);
                if (obrisati != null)
                {
                    db.AutorizacijskiTokenKlijent.Remove(obrisati);
                    db.SaveChanges();
                }
            }

            if (korisnik != null)
            {
                string token = Guid.NewGuid().ToString();
                db.AutorizacijskiTokenKlijent.Add(new AutorizacijskiTokenKlijent
                {
                    Vrijednost           = token,
                    KlijentId            = korisnik.KlijentID,
                    VrijemeEvidentiranja = DateTime.Now
                });
                db.SaveChanges();
                context.Response.SetCookieJson(LogiraniKorisnik, token);
            }
        }
Esempio n. 2
0
        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"));
        }