Exemplo n.º 1
0
 public FindAndReplacePage(eContext context)
 {
     InitializeComponent();
     mContext = context;
     SetFoundItemsGridView();
     Init();
 }
Exemplo n.º 2
0
        public async Task OnActionExecutionAsync(ActionExecutingContext filterContext, ActionExecutionDelegate next)
        {
            LoginInfo k = filterContext.HttpContext.Session.GetObjectFromJson <LoginInfo>("LoggedUser");



            if (_Svi == true)
            {
                await next(); //ok - ima pravo pristupa

                return;
            }

            if (k == null && _Svi != true)
            {
                if (filterContext.Controller is Controller controller)
                {
                    controller.TempData["error_poruka"] = "Niste logirani";
                }

                filterContext.Result = new RedirectToActionResult("Login", "Autentifikacija", new { @area = "" });
                return;
            }

            //Preuzimamo DbContext preko app services

            eContext db = new eContext();

            //kupci
            if (_Kupac == true && db.Kupac.Where(s => s.OsobaID == k.OsobaID).FirstOrDefault() != null)
            {
                await next(); //ok - ima pravo pristupa

                return;
            }

            //developeri
            if (_Developer && db.Developer.Where(s => s.OsobaID == k.OsobaID).FirstOrDefault() != null)
            {
                await next();//ok - ima pravo pristupa

                return;
            }
            if (_Administrator && db.Administrator.Where(s => s.OsobaID == k.OsobaID).FirstOrDefault() != null)
            {
                await next();//ok - ima pravo pristupa

                return;
            }



            if (filterContext.Controller is Controller c1)
            {
                c1.ViewData["error_poruka"] = "Nemate pravo pristupa";
            }
            filterContext.Result = new RedirectToActionResult("Index", "Kupac", new { @area = "" });
        }
Exemplo n.º 3
0
        public int IgraAktivanPopust(int igraID, eContext db)
        {
            Igra   igra   = db.Igra.Where(i => i.IgraID == igraID).FirstOrDefault();
            Popust popust = db.Popust.Where(p => p.PocetakPopusta <= DateTime.Now && p.KrajPopusta >= DateTime.Now && p.IgraID == igraID).FirstOrDefault();

            if (igra == null || popust == null)
            {
                return(0);
            }
            return(popust.PopustProcent);
        }
Exemplo n.º 4
0
        public List <Igra> PretragaZanrKategorija(List <Igra> igre, int zanr = 0, int kategorija = 0, eContext db = null)
        {
            if (db == null)
            {
                db = new eContext();
            }
            if (zanr != 0 && kategorija != 0)
            {
                var query =
                    from igra in igre
                    where igra.GameGenreID == zanr && igra.RatingCategorieID == kategorija
                    select igra;
                igre = query.ToList();
            }

            else
            {
                if (zanr != 0 && kategorija == 0)
                {
                    var query =
                        from igra in igre
                        where igra.GameGenreID == zanr
                        select igra;
                    igre = query.ToList();
                }
                else
                {
                    if (zanr == 0 && kategorija != 0)
                    {
                        var query =
                            from igra in igre
                            where igra.RatingCategorieID == kategorija
                            select igra;
                        igre = query.ToList();
                    }
                }
            }
            return(igre);
        }
Exemplo n.º 5
0
        public double cijenaSaPopustom(int igraID, eContext db)
        {
            Igra   igra   = db.Igra.Where(i => i.IgraID == igraID).FirstOrDefault();
            Popust popust = db.Popust.Where(p => p.PocetakPopusta <= DateTime.Now && p.KrajPopusta >= DateTime.Now && p.IgraID == igraID).FirstOrDefault();

            if (igra == null)
            {
                return(0);
            }



            if (popust != null)
            {
                float procent = 1 - (float)popust.PopustProcent / 100;

                return(Math.Round((igra.Cijena * procent), 2));
            }



            return(igra.Cijena);
        }
Exemplo n.º 6
0
        //Uradjeno samo za osobu treba doradit za kupca
        public bool DodajSliku(int IgraID = 0, int OsobaID = 0, IFormFile Image = null, eContext db = null)
        {
            if (db == null)
            {
                db = new eContext();
            }
            if (Image != null)
            {
                if (Image.Length > 0)
                {
                    using (var fs1 = Image.OpenReadStream())

                        if (OsobaID != 0 && IgraID == 0)
                        {
                            byte[] p1 = null;


                            using (var ms1 = new MemoryStream())
                            {
                                Osoba Osoba = db.Osoba.Where(o => o.OsobaID == OsobaID).FirstOrDefault();
                                fs1.CopyTo(ms1);
                                p1 = ms1.ToArray();
                                if (!ProvjeriPostojanje(0, OsobaID, Image, db))
                                {
                                    OsobaImage OsobaImage = new OsobaImage
                                    {
                                        OsobaID = OsobaID,
                                        Image   = p1
                                    };
                                    db.OsobaImage.Add(OsobaImage);
                                    Osoba.OsobaImage = OsobaImage;
                                }
                                else
                                {
                                    Osoba.OsobaImage.Image = p1;
                                }



                                db.SaveChanges();

                                return(true);
                            }
                        }


                        else
                        {
                            if (OsobaID == 0 && IgraID != 0)
                            {
                                byte[] p1 = null;
                                using (var ms1 = new MemoryStream())
                                {
                                    Igra Igra = db.Igra.Where(i => i.IgraID == IgraID).FirstOrDefault();
                                    fs1.CopyTo(ms1);
                                    p1 = ms1.ToArray();
                                    if (!ProvjeriPostojanje(IgraID, 0, Image, db))
                                    {
                                        IgricaImage i1 = new IgricaImage
                                        {
                                            IgraID = IgraID,
                                            Image  = p1
                                        };
                                        Igra.IgricaImage = i1;
                                        db.IgricaImage.Add(i1);
                                    }
                                    else
                                    {
                                        Igra.IgricaImage.Image = p1;
                                    }

                                    db.SaveChanges();
                                    db.Dispose();
                                    return(true);
                                }
                            }
                        }
                }
            }

            return(false);
        }
Exemplo n.º 7
0
        public bool ProvjeriPostojanje(int IgraID = 0, int OsobaID = 0, IFormFile Image = null, eContext db = null)
        {
            if (Image != null)
            {
                if (OsobaID != 0 && IgraID == 0)
                {
                    if (db.OsobaImage.Where(oi => oi.OsobaID == OsobaID).FirstOrDefault() != null)
                    {
                        return(true);
                    }
                    return(false);
                }
                if (OsobaID == 0 && IgraID != 0)
                {
                    if (db.IgricaImage.Where(ii => ii.IgraID == IgraID).FirstOrDefault() != null)
                    {
                        return(true);
                    }
                    return(false);
                }
            }


            return(false);
        }
Exemplo n.º 8
0
        private Task <KupacIndexVM> GetItemsAsync(string pretraga, int sortirajPo, int zanr, int kategorija, int from, int to, eContext db)
        {
            PretragaIgra p = new PretragaIgra();

            return(Task.Run(() => p.GetKupacIndexVM(pretraga, sortirajPo, zanr, kategorija, from, to, db)));
        }
Exemplo n.º 9
0
        public List <Igra> PretragaIgrica(string pretraga, eContext db)
        {
            if (pretraga == null || pretraga == "")
            {
                return(db.Igra
                       .Include(i => i.IgricaImage)
                       .ToList());
            }
            List <Igra> igre = db.Igra
                               .Include(i => i.IgricaImage)
                               .ToList();
            List <int>  PretragaPogodatak = new List <int>();
            List <Igra> PretragaIgra = new List <Igra>();
            int         brojac = 0, PP;
            Igra        PI;

            if (pretraga != null && igre.Count != 0)
            {
                List <Regex> r = new List <Regex>();
                pretraga = pretraga.ToLower();
                string[] k = Regex.Split(pretraga, "\\s+");

                foreach (string x in k)
                {
                    r.Add(new Regex("\\b" + x + "\\b"));
                }

                //Prebrojavamo koliko naziv svake igre ima istih rjeci kao pretraga string
                for (int i = 0; i < igre.Count; i++)
                {
                    brojac = 0;
                    foreach (Regex reg in r)
                    {
                        if (reg.Match(igre[i].Naziv.ToLower()).Success)
                        {
                            if (brojac == 0)
                            {
                                PretragaIgra.Add(igre[i]);
                            }
                            brojac++;
                        }
                    }
                    if (brojac != 0)
                    {
                        PretragaPogodatak.Add(brojac);
                    }
                }

                for (int i = 0; i < PretragaIgra.Count; i++)
                {
                    for (int j = i + 1; j < PretragaIgra.Count; j++)
                    {
                        if (PretragaPogodatak[j] > PretragaPogodatak[i])
                        {
                            PP = PretragaPogodatak[i];
                            PretragaPogodatak[i] = PretragaPogodatak[j];
                            PretragaPogodatak[j] = PP;

                            //-------------------------------------

                            PI = PretragaIgra[i];
                            PretragaIgra[i] = PretragaIgra[j];
                            PretragaIgra[j] = PI;
                        }
                    }
                }

                return(PretragaIgra);
            }
            return(new List <Igra>());
        }
Exemplo n.º 10
0
        public KupacIndexVM GetKupacIndexVM(string pretraga = null, int sortirajPo = 1, int zanr = 0, int kategorija = 0, int from = 0, int to = 20, eContext db = null)
        {
            KupacIndexVM kupacIndexVM = new KupacIndexVM()
            {
                pretraga   = pretraga,
                sortirajPo = sortirajPo,
                zanr       = zanr,
                kategorija = kategorija,
                from       = from,
                to         = to
            };
            PretragaIgra p = new PretragaIgra();
            //pretrazivanje
            List <Igra> igre = p.PretragaIgrica(kupacIndexVM.pretraga, db);

            //filtiranje
            igre = p.PretragaZanrKategorija(igre, kupacIndexVM.zanr, kupacIndexVM.kategorija, db);
            //sortiranje
            igre = p.Sortiranje(igre, kupacIndexVM.sortirajPo, db);



            //to -= from;
            to = 20;
            if (from + to < igre.Count)
            {
                igre = igre.GetRange(from, to);
            }
            else
            {
                to = igre.Count() - from;
                if (to > 0)
                {
                    igre = igre.GetRange(from, to);
                }
                else
                {
                    igre = new List <Igra>();
                }
            }
            kupacIndexVM.Igre = igre;

            foreach (Igra x in igre)
            {
                kupacIndexVM.PopustProcent.Add(p.IgraAktivanPopust(x.IgraID, db));
                kupacIndexVM.novaCijena.Add(p.cijenaSaPopustom(x.IgraID, db));
            }

            return(kupacIndexVM);
        }
Exemplo n.º 11
0
        public List <Igra> Sortiranje(List <Igra> igre, int sortirajPo = 1, eContext db = null)
        {
            if (db == null)
            {
                db = new eContext();
            }
            switch (sortirajPo)
            {
            case 2:
            {
                var queryIgra =
                    from igra in igre
                    where igra.Odobrena == true
                    orderby igra.DatumObjave descending
                    select igra;


                igre = queryIgra.ToList();
            }
            break;

            case 1:
            {
                var queryIgra =
                    from igra in igre
                    join kupacKupuje in db.KupacKupuje on igra.IgraID equals kupacKupuje.IgraID
                    into pk
                    from kupacKupuje in pk.DefaultIfEmpty()
                    where igra.Odobrena == true
                    group igra by igra into g
                    orderby g.Count() descending
                    select g.Key;


                igre = queryIgra.ToList();
            }
            break;

            case 3:
            {
                var queryIgra =
                    from igra in igre
                    where igra.Odobrena == true
                    orderby cijenaSaPopustom(igra.IgraID, db) ascending
                    select igra;

                igre = queryIgra.ToList();
            }
            break;

            case 4:
            {
                var queryIgra =
                    from igra in igre
                    where igra.Odobrena == true
                    orderby cijenaSaPopustom(igra.IgraID, db) descending
                    select igra;

                igre = queryIgra.ToList();
            }
            break;


            case 5:
            {
                var queryIgra =
                    from igra in igre
                    where igra.Odobrena == true
                    orderby IgraAktivanPopust(igra.IgraID, db) descending
                    select igra;

                igre = queryIgra.ToList();
            }
            break;



            default: break;
            }
            return(igre);
        }
Exemplo n.º 12
0
 public MyUserService()
 {
     db = new eContext();
 }