private void ProcessMovies(Cinema cinema, string cinemaName, CinemaType cinemaType) { var textColor = CinemaColor(cinemaType); var group = new Group <MovieShows>(textColor, cinemaName, cinema.Name.Substring(0, 1) + cinema.City.Substring(0, 2)); foreach (SimpleMovie movie in cinema.MoviesPlayed) { if (_filterService.IsActive) { if (!_filterService.Check(movie)) { continue; } } string shows = ""; foreach (var show in movie.Shows) { if (show.ShowDate.Date.Equals(DateTime.Today)) { shows = shows + show.Start + ", "; } } string genre = null; if (movie.Genre != null) { if (movie.Genre.Count > 0) { genre = movie.Genre[0]; } } var showData = new BasicShowData(cinema.IdCinema, movie.Id, cinemaName, movie.AverageRating); MvxAsyncCommand command = new MvxAsyncCommand(async() => { await _navigationService.Navigate <MovieViewModel, BasicShowData>(showData); }); var movieShows = new MovieShows(movie.Name, genre, shows, movie.AverageRating, command); group.Add(movieShows); } if (group.Count != 0) { Repertoires.Add(group); } }