/// <summary> /// Charge les données provenant d'internet à partir d'un id /// </summary> /// <param name="data">les données pour récupérer les infos d'internet</param> /// <returns></returns> public async Task ChargerFilm(SearchDataInternet data) { switch (data.TypeData) { case TypeFilmEnum.SERIE: Film = await _movieDbBusiness.GetSerie(data.Id); break; default: Film = await _movieDbBusiness.GetFilm(data.Id); break; } SelectedProducteursListe = new List <Personne>(Film.Producteurs); SelectedRealisateursListe = new List <Personne>(Film.Realisateurs); SelectedActeurListe = new List <Personne>(Film.Acteurs); ListeGenreSelected = new List <Genre>(Film.Genres); Affiche = Film.AfficheImage; Film.Id = 0; Film.MaNote = 3; if (Film.IdCollectionInternet > 0) { TitreCollection = Film.NomCollection; if (ListeCollection.Count(x => x.NomCollection == TitreCollection) >= 1) { SelectedCollection = ListeCollection.First(x => x.IdCollectionInternet == Film.IdCollectionInternet); } } }
/// <summary> /// Charge un film à partir d'internet /// </summary> /// <param name="id"></param> /// <returns></returns> public async Task GetFilmFromInternet(int id) { var newFilm = (Film.Type == (int)TypeFilmEnum.SERIE) ? await _movieDbBusiness.GetSerie(id) : await _movieDbBusiness.GetFilm(id); newFilm.Id = Film.Id; newFilm.Voir = Film.Voir; newFilm.SouhaitVoir = Film.SouhaitVoir; newFilm.Souhait = Film.Souhait; newFilm.Posseder = Film.Posseder; newFilm.TypeSupport = Film.TypeSupport; newFilm.MaNote = Film.MaNote; newFilm.Lien = Film.Lien; newFilm.OrdreCollection = await _filmBusiness.GetNumeroSuivantCollectionInternet(newFilm.IdCollectionInternet, newFilm.Annee ?? -1, newFilm.IdInternet); Film = newFilm; SelectedProducteursListe = new List <Personne>(Film.Producteurs); SelectedRealisateursListe = new List <Personne>(Film.Realisateurs); SelectedActeurListe = new List <Personne>(Film.Acteurs); ListeGenreSelected = new List <Genre>(Film.Genres); Affiche = Film.AfficheImage; if (Film.IdCollectionInternet > 0) { TitreCollection = Film.NomCollection; if (ListeCollection.Count(x => x.NomCollection == TitreCollection) >= 1) { SelectedCollection = ListeCollection.First(x => x.IdCollectionInternet == Film.IdCollectionInternet); } } }
/// <summary> /// Retourne une collection à partir de son nom /// </summary> /// <param name="nom">le nom</param> /// <returns>la collection</returns> public Collection GetCollection(string nom) { if (ListeCollection.Count(x => string.Equals(x.NomCollection.ToLower(), nom.ToLower()) && x.Id != Film.Id) > 0) { return(ListeCollection.FirstOrDefault(x => string.Equals(x.NomCollection.ToLower(), nom.ToLower()))); } return(null); }
/// <summary> /// Charge les informations d'un film /// </summary> /// <param name="film">le film à charger</param> /// <returns></returns> public async Task ChargerFilm(Film film) { Film = await _filmBusiness.GetFilm(film.Id); if (film.Affiche != null || (film.AfficheImage?.UriSource != null && !film.AfficheImage.UriSource.Equals(ContexteStatic.UriAfficheDefaut))) { Affiche = Film.AfficheImage; } ListeGenreSelected = new List <Genre>(Film.Genres); SelectedActeurListe = new List <Personne>(Film.Acteurs); SelectedProducteursListe = new List <Personne>(Film.Producteurs); SelectedRealisateursListe = new List <Personne>(Film.Realisateurs); if (Film.IdCollection > 0) { SelectedCollection = ListeCollection.First(x => x.Id == Film.IdCollection); if (SelectedCollection != null) { TitreCollection = SelectedCollection.NomCollection; } } }
/// <summary> /// Retourne une liste de collection à partir d'une chaine /// </summary> /// <param name="query">la chaine à rechercher</param> /// <returns>la liste des collections trouvés</returns> public IEnumerable <Collection> GetSearchCollection(string query) { return(ListeCollection.Where(c => c.NomCollection.IndexOf(query, StringComparison.CurrentCultureIgnoreCase) > -1 && c.Id != Film.Id).OrderByDescending(c => c.NomCollection.StartsWith(query, StringComparison.CurrentCultureIgnoreCase))); }