Beispiel #1
0
        public void IndexAjaxSearch()
        {
            PartialViewResult Result = Assert.IsType <PartialViewResult>(_predstaveController.IndexAjax(new IndexVM
            {
                Search = "1"
            }));

            IndexAjaxVM Model = Assert.IsType <IndexAjaxVM>(Result.Model);

            Assert.Single(Model.Predstave);
        }
Beispiel #2
0
        public void IndexAjaxOcjena()
        {
            PartialViewResult Result = Assert.IsType <PartialViewResult>(_predstaveController.IndexAjax(new IndexVM
            {
                Rating = 3
            }));

            IndexAjaxVM Model = Assert.IsType <IndexAjaxVM>(Result.Model);

            Assert.Equal(2, Model.Predstave.Count);
        }
Beispiel #3
0
        public IActionResult IndexAjax(int trenutniAvatar)
        {
            IndexAjaxVM Model = new IndexAjaxVM
            {
                Avatari = _context.Avatar.Select(s => new IndexAjaxVM.Avatar
                {
                    Id       = s.Id,
                    Link     = s.Link,
                    Selected = s.Id == trenutniAvatar
                }).ToList()
            };

            return(PartialView(Model));
        }
Beispiel #4
0
        public IActionResult IndexAjax(IndexVM modelIn)
        {
            List <int> Zanrovi = _context.Zanr.Select(s => s.Id).ToList();

            if (modelIn.Zanrovi != null)
            {
                List <int> OznaceniZanrovi = modelIn.Zanrovi.Where(w => w.Oznacen).Select(s => s.Id).ToList();
                if (OznaceniZanrovi.Count != 0)
                {
                    Zanrovi = modelIn.Zanrovi.Where(w => w.Oznacen).Select(s => s.Id).ToList();
                }
            }

            IndexAjaxVM Model = new IndexAjaxVM
            {
                Predstave = _context.Termin
                            /*.Where(w => w.DatumVrijeme > DateTime.Now)*/
                            .Where(w => w.Predstava.Naziv.Contains(modelIn.Search ?? "") &&
                                   w.Predstava.PredstavaZanr.Select(q => q.ZanrId).Intersect(Zanrovi).Any())
                            .GroupBy(g => g.Predstava)
                            .Select(s => new IndexAjaxVM.Predstava
                {
                    Id        = s.Key.Id,
                    Naziv     = s.Key.Naziv,
                    Opis      = s.Key.Opis.Substring(0, Math.Min(s.Key.Opis.Length, 440)) + "...",
                    SlikaLink = s.Key.SlikaLink,
                    Ocjena    = _context.Ocjena.Where(w => w.Narudzba.Termin.PredstavaId == s.Key.Id)
                                .Average(a => (double?)a.Vrijednost) ?? 0,
                    OcjenaLink =
                        Math.Round(
                            _context.Ocjena.Where(w => w.Narudzba.Termin.PredstavaId == s.Key.Id)
                            .Average(a => (int?)a.Vrijednost) ?? 0, MidpointRounding.AwayFromZero).ToString(CultureInfo.InvariantCulture) +
                        "star.svg",
                    Zanrovi = string.Join(", ",
                                          _context.PredstavaZanr.Where(w => w.PredstavaId == s.Key.Id).Select(q => q.Zanr.Naziv)
                                          .ToList()),
                    GlavnaUloga = string.Join(", ",
                                              _context.Uloga.Where(w => w.PredstavaId == s.Key.Id && w.IsGlavnaUloga)
                                              .Select(q => q.Glumac.Ime + " " + q.Glumac.Prezime).ToList())
                }).Where(w => Math.Round(w.Ocjena == 0 ? 1 : w.Ocjena) >= modelIn.Rating).ToList()
            };

            return(PartialView(Model));
        }
Beispiel #5
0
        public void IndexAjaxZanr()
        {
            PartialViewResult Result = Assert.IsType <PartialViewResult>(_predstaveController.IndexAjax(new IndexVM
            {
                Zanrovi = new List <Zanr>
                {
                    new Zanr {
                        Id = 1, Oznacen = true
                    },
                    new Zanr {
                        Id = 2, Oznacen = false
                    },
                    new Zanr {
                        Id = 3, Oznacen = false
                    },
                    new Zanr {
                        Id = 4, Oznacen = false
                    },
                    new Zanr {
                        Id = 5, Oznacen = false
                    },
                    new Zanr {
                        Id = 6, Oznacen = true
                    },
                    new Zanr {
                        Id = 7, Oznacen = false
                    },
                    new Zanr {
                        Id = 8, Oznacen = false
                    }
                }
            }));

            IndexAjaxVM Model = Assert.IsType <IndexAjaxVM>(Result.Model);

            Assert.Equal(5, Model.Predstave.Count);
        }