Esempio n. 1
0
        public ActionResult SearchBars()
        {
            var currentUser = User.Identity.Name;
            var patron      = _context.Patrons
                              .Include(p => p.FollowedBars)
                              .Include(z => z.City)
                              .Include(y => y.State)
                              .Include(z => z.ZipCode)
                              .SingleOrDefault(c => c.Email == currentUser);
            var barGames       = _context.BarGames.Include(x => x.Bars).ToList();
            var sportsPackages = _context.SportsPackages.Include(x => x.Bars).ToList();
            var specials       = _context.Specials.ToList();
            var tapBeers       = _context.TapBeers.Include(x => x.Bars).ToList();
            var states         = _context.States.ToList();
            var zipCodes       = _context.ZipCodes.ToList();
            var cities         = _context.Cities.ToList();
            var daysOfWeek     = _context.DayOfWeeks.ToList();
            var bars           = _context.Bars
                                 .Include(x => x.ZipCode)
                                 .Include(x => x.City)
                                 .Include(x => x.State)
                                 .Include(x => x.FeedMessages)
                                 .Include(x => x.BarGames)
                                 .Include(x => x.Specials)
                                 .Include(x => x.SportsPackages)
                                 .Include(x => x.TapBeers)
                                 .Include(x => x.Followers)
                                 .Include(x => x.HoursOfOperations)
                                 .Include(x => x.BarReviews).ToList();
            var viewModel = new SearchBarsViewModel
            {
                Patron         = patron,
                Bars           = bars,
                BarGames       = barGames,
                SportsPackages = sportsPackages,
                TapBeers       = tapBeers,
                States         = states,
                Cities         = cities,
                ZipCodes       = zipCodes,
                Specials       = specials,
            };

            return(View(viewModel));
        }
Esempio n. 2
0
        public ActionResult FilterSearch(List <Bar> barz, SearchBarsViewModel viewModel)
        {
            List <Bar> filteredBars = new List <Bar>();

            var currentUser = User.Identity.Name;
            var patron      = _context.Patrons
                              .Include(r => r.BarReviews)
                              .Include(p => p.FollowedBars)
                              .Include(z => z.City)
                              .Include(y => y.State)
                              .Include(z => z.ZipCode)
                              .SingleOrDefault(c => c.Email == currentUser);
            var bars = _context.Bars
                       .Include(x => x.ZipCode)
                       .Include(x => x.City)
                       .Include(x => x.State)
                       .Include(x => x.FeedMessages)
                       .Include(x => x.BarGames)
                       .Include(x => x.Specials)
                       .Include(x => x.SportsPackages)
                       .Include(x => x.TapBeers)
                       .ToList();

            if (viewModel.SportsPackage.Id != 0)
            {
                foreach (var bar in bars.ToList())
                {
                    foreach (var package in bar.SportsPackages)
                    {
                        if (package.Id == viewModel.SportsPackage.Id)
                        {
                            filteredBars.Add(bar);
                        }
                    }
                }
            }
            if (viewModel.BarGame.Id != 0)
            {
                foreach (var bar in bars.ToList())
                {
                    foreach (var game in bar.BarGames)
                    {
                        if (game.Id == viewModel.BarGame.Id)
                        {
                            filteredBars.Add(bar);
                        }
                    }
                }
            }
            if (viewModel.TapBeer.Id != 0)
            {
                foreach (var bar in bars.ToList())
                {
                    foreach (var tap in bar.TapBeers)
                    {
                        if (tap.Id == viewModel.TapBeer.Id)
                        {
                            filteredBars.Add(bar);
                        }
                    }
                }
            }
            var barGames        = _context.BarGames.ToList();
            var sportsPackages  = _context.SportsPackages.ToList();
            var specials        = _context.Specials.ToList();
            var tapBeers        = _context.TapBeers.ToList();
            var states          = _context.States.ToList();
            var zipCodes        = _context.ZipCodes.ToList();
            var cities          = _context.Cities.ToList();
            var daysOfWeek      = _context.DayOfWeeks.ToList();
            var searchViewModel = new SearchBarsViewModel
            {
                Patron         = patron,
                Bars           = filteredBars,
                BarGames       = barGames,
                SportsPackages = sportsPackages,
                TapBeers       = tapBeers,
                States         = states,
                Cities         = cities,
                ZipCodes       = zipCodes,
                Specials       = specials,
            };



            return(View("SearchBars", searchViewModel));
        }