예제 #1
0
        /// <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);
                }
            }
        }
예제 #2
0
        /// <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);
                }
            }
        }
예제 #3
0
 /// <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);
 }
예제 #4
0
        /// <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;
                }
            }
        }
예제 #5
0
 /// <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)));
 }