public async Task <IActionResult> RemoveFromShoppingCart(string orderId, int movieId) { ApplicationUser customer = null; if (User.Identity.Name != null) { customer = await _userManager.FindByNameAsync(User.Identity.Name); } if (customer != null) { var order = _context.Orders.Include(o => o.OrderedMovies).FirstOrDefault(o => o.OrderId == orderId); if (order != null) { var orderedMovie = order.OrderedMovies.FirstOrDefault(o => o.MovieId == movieId); orderedMovie.Amount--; await _context.SaveChangesAsync(); } } else { await LoadListOfMovies(); var searchResultModel = new SearchResultMovieModelView(); InitializeModel(searchResultModel); var selectedmovie = searchResultModel.ResultList.Results.FirstOrDefault(e => e.Id == movieId); if (selectedmovie != null) { _order.RemoveFromCart(selectedmovie); } } return(RedirectToAction("Index")); }
public async Task <IActionResult> Search(string condition, string search) { await LoadListOfMovies(); var resultViewModel = new SearchResultMovieModelView(); var returnViewModel = new SearchResultMovieModelView(); InitializeModel(resultViewModel); if (search == null || string.IsNullOrWhiteSpace(search)) { return(View(resultViewModel)); } if (condition == "Title") { foreach (var item in resultViewModel.ResultList.Results) { if (item.Title.ToLower().Contains(search.ToLower())) { if (!returnViewModel.ResultList.Results.Any(m => m.Title == item.Title)) { returnViewModel.ResultList.Results.Add(item); } } } } else if (condition == "Vote") { if (double.TryParse(search, out double vote)) { if (vote >= 10 || vote <= 0) { vote = 0; } foreach (var item in resultViewModel.ResultList.Results) { if (item.VoteAverage >= vote) { if (!returnViewModel.ResultList.Results.Contains(item)) { returnViewModel.ResultList.Results.Add(item); } } } } } returnViewModel.ViewTitle = "Search Result"; return(View(returnViewModel)); }
public async Task <IActionResult> ListAllMovies() { await LoadListOfMovies(); var returnViewModel = new SearchResultMovieModelView(); InitializeModel(returnViewModel); returnViewModel.ViewTitle = "All Movies"; return(View("Search", returnViewModel)); }
private void InitializeModel(SearchResultMovieModelView model) { foreach (var item in popularMovies.Results) { model.ResultList.Results.Add(item); } foreach (var item in upComingMovies.Results) { model.ResultList.Results.Add(item); } foreach (var item in topRatedMovies.Results) { model.ResultList.Results.Add(item); } foreach (var item in nowPlayingMovies.Results) { model.ResultList.Results.Add(item); } }
public async Task <IActionResult> ListMoviesByGenre(int genre) { await LoadListOfMovies(); var resultViewModel = new SearchResultMovieModelView(); var returnViewModel = new SearchResultMovieModelView(); InitializeModel(resultViewModel); foreach (var item in resultViewModel.ResultList.Results) { if (item.GenreIds.Contains(genre)) { returnViewModel.ResultList.Results.Add(item); } } returnViewModel.ViewTitle = "By Genre"; return(View("Search", returnViewModel)); }
public async Task <IActionResult> ListMoviesByCategory(string condition) { await LoadListOfMovies(); var viewModel = new SearchResultMovieModelView(); switch (condition) { case "Latest": foreach (var item in nowPlayingMovies.Results) { viewModel.ResultList.Results.Add(item); } viewModel.ViewTitle = "Latest Movies"; break; case "Popular": foreach (var item in topRatedMovies.Results) { viewModel.ResultList.Results.Add(item); } viewModel.ViewTitle = "Popular Movies"; break; case "Soon": foreach (var item in upComingMovies.Results) { viewModel.ResultList.Results.Add(item); } viewModel.ViewTitle = "Coming Soon Movies"; break; default: break; } return(View("Search", viewModel)); }