public IHttpActionResult ObrisiManifestaciju(string id)
        {
            bp.listaManifestacija = (Dictionary <string, Manifestacija>)HttpContext.Current.Application["Manifestacije"];
            bp.listaKorisnika     = (Dictionary <string, Korisnik>)HttpContext.Current.Application["Korisnici"];
            bp.listaKarata        = (Dictionary <string, Karta>)HttpContext.Current.Application["Karte"];
            bp.listaKomentara     = (Dictionary <string, Komentar>)HttpContext.Current.Application["Komentari"];


            Korisnik korisnikSesija = (Korisnik)HttpContext.Current.Session["Korisnik"];

            if (korisnikSesija == null)
            {
                korisnikSesija = new Korisnik();
                HttpContext.Current.Session["Korisnik"] = korisnikSesija;
            }

            if (korisnikSesija.Uloga == Enums.Uloga.ADMINISTRATOR)
            {
                bp.listaManifestacija[id].IsDeleted = bool.Parse("True");

                foreach (var item in bp.listaKarata.Values)
                {
                    if (item.ManifestacijaID == id)
                    {
                        bp.listaKarata[item.Id].IsDeleted = bool.Parse("True");
                    }
                }

                bp.AzurirajKarte();

                foreach (var item in bp.listaKomentara.Values)
                {
                    if (item.ManifestacijaID == id)
                    {
                        bp.listaKomentara[item.Id].IsDeleted = bool.Parse("True");
                    }
                }

                bp.AzurirajKomentare();

                bp.AzurirajManifestacije();
            }

            return(Ok());
        }
        public IHttpActionResult ObrisiKorisnika(string id)
        {
            bp.listaManifestacija = (Dictionary <string, Manifestacija>)HttpContext.Current.Application["Manifestacije"];
            bp.listaKorisnika     = (Dictionary <string, Korisnik>)HttpContext.Current.Application["Korisnici"];
            bp.listaKarata        = (Dictionary <string, Karta>)HttpContext.Current.Application["Karte"];

            Korisnik korisnikSesija = (Korisnik)HttpContext.Current.Session["Korisnik"];

            if (korisnikSesija == null)
            {
                korisnikSesija = new Korisnik();
                HttpContext.Current.Session["Korisnik"] = korisnikSesija;
            }

            if (korisnikSesija.Uloga == Enums.Uloga.ADMINISTRATOR)
            {
                bp.listaKorisnika[id].IsDeleted = bool.Parse("True");

                if (bp.listaKorisnika[id].Uloga == Enums.Uloga.KUPAC)
                {
                    Kupac k = (Kupac)bp.listaKorisnika[id];
                    foreach (var item in k.SveMojeKarteBezObziraNaStatus)
                    {
                        bp.listaKarata[item].IsDeleted = bool.Parse("True");
                    }
                    bp.AzurirajKarte();
                }
                else if (bp.listaKorisnika[id].Uloga == Enums.Uloga.PRODAVAC)
                {
                    Prodavac p = (Prodavac)bp.listaKorisnika[id];

                    foreach (var item in p.SveMojeManifestacije)
                    {
                        bp.listaManifestacija[item].IsDeleted = bool.Parse("True");
                    }
                    bp.AzurirajManifestacije();
                }

                bp.AzurirajKorisnike();
            }

            return(Ok());
        }
        public IHttpActionResult OdustaniOdKarte(string id)
        {
            bp.listaManifestacija = (Dictionary <string, Manifestacija>)HttpContext.Current.Application["Manifestacije"];
            bp.listaKorisnika     = (Dictionary <string, Korisnik>)HttpContext.Current.Application["Korisnici"];
            bp.listaKarata        = (Dictionary <string, Karta>)HttpContext.Current.Application["Karte"];

            Korisnik korisnikSesija = (Korisnik)HttpContext.Current.Session["Korisnik"];

            if (korisnikSesija == null)
            {
                korisnikSesija = new Korisnik();
                HttpContext.Current.Session["Korisnik"] = korisnikSesija;
            }

            if (korisnikSesija.Uloga == Enums.Uloga.KUPAC)
            {
                Kupac k = (Kupac)korisnikSesija;
                bp.listaKarata[id].Status         = Enums.StatusKarte.ODUSTANAK;
                bp.listaKarata[id].DatumOdustanka = DateTime.Today;
                bp.AzurirajKarte();

                int brojac = 0;

                foreach (var item in bp.listaKarata.Values)
                {
                    DateTime startDate  = bp.listaKarata[id].DatumOdustanka;
                    DateTime expiryDate = startDate.AddDays(-30);
                    DateTime datumKarte = DateTime.Parse("01/01/2001");

                    if (item.KupacID == korisnikSesija.Id)
                    {
                        if (item.DatumOdustanka != datumKarte && item.DatumOdustanka >= expiryDate && item.DatumOdustanka <= startDate)
                        {
                            brojac++;
                        }
                    }
                }

                if (brojac > 5)
                {
                    k.SumnjivKupac = bool.Parse("True");
                }


                k.BrojSakupljenihBodova -= (decimal.ToDouble(bp.listaKarata[id].Cena) / 1000 * 133 * 4);

                if (k.BrojSakupljenihBodova < 0)
                {
                    k.BrojSakupljenihBodova = 0;
                }

                if (k.BrojSakupljenihBodova >= k.TipKorisn.PotrebanBrojBodovaZlato)
                {
                    k.TipKorisn.ImeTipa = Enums.TipKorisnika.ZLATNI;
                    k.TipKorisn.Popust  = 20;
                }
                else if (k.BrojSakupljenihBodova >= k.TipKorisn.PotrebanBrojBodovaSrebro)
                {
                    k.TipKorisn.ImeTipa = Enums.TipKorisnika.SREBRNI;
                    k.TipKorisn.Popust  = 10;
                }
                else
                {
                    k.TipKorisn.ImeTipa = Enums.TipKorisnika.BRONZANI;
                    k.TipKorisn.Popust  = 5;
                }

                bp.AzurirajKorisnike();
            }

            return(Ok());
        }