예제 #1
0
        public void GetInfoFromWeb(IMyCollectionsData item)
        {
            string search = string.Empty;

            try
            {
                bool      bFind      = false;
                Hashtable objResults = null;

                Movie objEntity = item as Movie;
                if (objEntity == null)
                {
                    return;
                }

                if (objEntity.IsComplete == false)
                {
                    string strSearch = objEntity.Title;
                    search = strSearch;

                    search = Util.CleanExtensions(search);

                    Task.Factory.StartNew(() => Util.NotifyEvent("getInfoFromWeb: Movie : " + search));

                    #region TMDB

                    if (MySettings.EnableTMDBMovies == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = TheMovieDbServices.Search(strSearch, LanguageType.EN);

                        if (results != null && results.Any())
                        {
                            objResults = TheMovieDbServices.Parse(results[0].Link, LanguageType.EN);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }
                    if (bFind == false && MySettings.EnableTMDBFrMovies == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = TheMovieDbServices.Search(strSearch, LanguageType.FR);

                        if (results != null && results.Any())
                        {
                            objResults = TheMovieDbServices.Parse(results[0].Link, LanguageType.FR);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }
                    if (bFind == false && MySettings.EnableTMDBDeMovies == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = TheMovieDbServices.Search(strSearch, LanguageType.DE);

                        if (results != null && results.Any())
                        {
                            objResults = TheMovieDbServices.Parse(results[0].Link, LanguageType.DE);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }
                    if (bFind == false && MySettings.EnableTMDBItMovies == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = TheMovieDbServices.Search(strSearch, LanguageType.IT);

                        if (results != null && results.Any())
                        {
                            objResults = TheMovieDbServices.Parse(results[0].Link, LanguageType.IT);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }
                    if (bFind == false && MySettings.EnableTMDBCnMovies == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = TheMovieDbServices.Search(strSearch, LanguageType.CN);

                        if (results != null && results.Any())
                        {
                            objResults = TheMovieDbServices.Parse(results[0].Link, LanguageType.CN);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }
                    if (bFind == false && MySettings.EnableTMDBSpMovies == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = TheMovieDbServices.Search(strSearch, LanguageType.ES);

                        if (results != null && results.Any())
                        {
                            objResults = TheMovieDbServices.Parse(results[0].Link, LanguageType.ES);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }

                    if (bFind == false && MySettings.EnableTMDBPtMovies == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = TheMovieDbServices.Search(strSearch, LanguageType.PT);

                        if (results != null && results.Any())
                        {
                            objResults = TheMovieDbServices.Parse(results[0].Link, LanguageType.PT);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }

                    #endregion
                    #region Allocine

                    if (bFind == false && MySettings.EnableAlloCineMovies == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = AlloCineServices.Search(strSearch, LanguageType.FR);

                        if (results != null && results.Any())
                        {
                            objResults = AlloCineServices.Parse(results[0].Link, LanguageType.FR);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }

                    if (bFind == false && MySettings.EnableAdoroCinemaMovies == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = AlloCineServices.Search(strSearch, LanguageType.BR);

                        if (results != null && results.Any())
                        {
                            objResults = AlloCineServices.Parse(results[0].Link, LanguageType.BR);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }

                    if (bFind == false && MySettings.EnableFilmStartsMovies == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = AlloCineServices.Search(strSearch, LanguageType.DE);

                        if (results != null && results.Any())
                        {
                            objResults = AlloCineServices.Parse(results[0].Link, LanguageType.DE);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }

                    #endregion
                    #region IMDB

                    if (bFind == false && MySettings.EnableIMDBMovies == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = ImdbServices.Search(strSearch);

                        if (results != null && results.Any())
                        {
                            objResults = ImdbServices.Parse(results[0].Link, true, strSearch);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }

                    #endregion
                    #region Amazon US

                    if (bFind == false && MySettings.EnableAmazonMovie == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = AmazonServices.Search(strSearch, string.Empty, AmazonIndex.DVD,
                                                                                   AmazonCountry.com, AmazonBrowserNode.None);

                        if (results != null && results.Any())
                        {
                            objResults = AmazonServices.Parse(results[0].Link, AmazonCountry.com,
                                                              !string.IsNullOrWhiteSpace(objEntity.BarCode), AmazonIndex.DVD, string.Empty);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }

                    #endregion
                    #region Amazon FR

                    if (bFind == false && MySettings.EnableAmazonFrMovie == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = AmazonServices.Search(strSearch, string.Empty, AmazonIndex.DVD,
                                                                                   AmazonCountry.fr, AmazonBrowserNode.None);

                        if (results != null && results.Any())
                        {
                            objResults = AmazonServices.Parse(results[0].Link, AmazonCountry.fr,
                                                              !string.IsNullOrWhiteSpace(objEntity.BarCode), AmazonIndex.DVD, string.Empty);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }

                    #endregion
                    #region Amazon DE

                    if (bFind == false && MySettings.EnableAmazonDeMovie == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = AmazonServices.Search(strSearch, string.Empty, AmazonIndex.DVD,
                                                                                   AmazonCountry.de, AmazonBrowserNode.None);

                        if (results != null && results.Any())
                        {
                            objResults = AmazonServices.Parse(results[0].Link, AmazonCountry.de,
                                                              !string.IsNullOrWhiteSpace(objEntity.BarCode), AmazonIndex.DVD, string.Empty);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }

                    #endregion
                    #region Amazon IT

                    if (bFind == false && MySettings.EnableAmazonItMovie == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = AmazonServices.Search(strSearch, string.Empty, AmazonIndex.DVD,
                                                                                   AmazonCountry.it, AmazonBrowserNode.None);

                        if (results != null && results.Any())
                        {
                            objResults = AmazonServices.Parse(results[0].Link, AmazonCountry.it,
                                                              !string.IsNullOrWhiteSpace(objEntity.BarCode), AmazonIndex.DVD, string.Empty);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }

                    #endregion
                    #region Amazon CN

                    if (bFind == false && MySettings.EnableAmazonCnMovie == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = AmazonServices.Search(strSearch, string.Empty, AmazonIndex.DVD,
                                                                                   AmazonCountry.cn, AmazonBrowserNode.None);

                        if (results != null && results.Any())
                        {
                            objResults = AmazonServices.Parse(results[0].Link, AmazonCountry.cn,
                                                              !string.IsNullOrWhiteSpace(objEntity.BarCode), AmazonIndex.DVD, string.Empty);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }

                    #endregion
                    #region Amazon ES

                    if (bFind == false && MySettings.EnableAmazonSpMovie == true)
                    {
                        strSearch = objEntity.Title;

                        if (MySettings.CleanTitle == true)
                        {
                            strSearch = Util.CleanExtensions(strSearch);
                        }

                        if (string.IsNullOrEmpty(objEntity.OriginalTitle) == false)
                        {
                            strSearch = objEntity.OriginalTitle;
                        }

                        Collection <PartialMatche> results = AmazonServices.Search(strSearch, string.Empty, AmazonIndex.DVD,
                                                                                   AmazonCountry.es, AmazonBrowserNode.None);

                        if (results != null && results.Any())
                        {
                            objResults = AmazonServices.Parse(results[0].Link, AmazonCountry.es,
                                                              !string.IsNullOrWhiteSpace(objEntity.BarCode), AmazonIndex.DVD, string.Empty);
                        }

                        if (objResults != null)
                        {
                            bFind = Fill(objResults, objEntity);
                        }
                    }

                    #endregion

                    CommonServices.Update(objEntity);
                }
            }
            catch (Exception exception)
            {
                Util.LogException(exception, search);
                throw;
            }
        }
예제 #2
0
        public static void GetInfoFromWeb(Artist objItem, bool usePartialMatch, Provider provider, out string errorMessage, bool log)
        {
            errorMessage = String.Empty;
            //Fix 2.6.7.0
            if (objItem != null)
            {
                errorMessage = String.Empty;
                string    strSearch  = (objItem.FirstName + " " + objItem.LastName).Trim();
                Hashtable objResults = null;
                Artist    results    = null;

                if (log == true)
                {
                    Task.Factory.StartNew(() => Util.NotifyEvent("getInfoFromWeb:Artist " + provider + " " + strSearch));
                }

                try
                {
                    switch (provider)
                    {
                    case Provider.Bing:
                        objResults = BingServices.SearchPortrait(strSearch, usePartialMatch);
                        break;

                    case Provider.Iafd:
                        objResults = IafdServices.SearchPortrait(strSearch, usePartialMatch);
                        break;

                    case Provider.Tmdb:
                        results = TheMovieDbServices.SearchPortrait(strSearch, usePartialMatch, LanguageType.EN);
                        break;

                    case Provider.AlloCine:
                        results = AlloCineServices.SearchPortrait(strSearch, usePartialMatch, LanguageType.FR);
                        break;

                    case Provider.AduldtDvdEmpire:
                        objResults = AdultdvdempireServices.SearchPortrait(strSearch, usePartialMatch);
                        break;
                    }
                    if (objResults != null)
                    {
                        Fill(objResults, objItem, strSearch);
                    }

                    #region Artist

                    if (results != null)
                    {
                        if (results.Picture != null)
                        {
                            if (objItem.Picture == null || objItem.Picture.Length < results.Picture.Length)
                            {
                                objItem.Picture = results.Picture;
                            }
                        }

                        //FIX 2.8.0.0
                        if (results.ArtistCredits != null)
                        {
                            if (objItem.ArtistCredits == null)
                            {
                                objItem.ArtistCredits = new List <ArtistCredits>();
                            }

                            for (int i = 0; i < results.ArtistCredits.Count; i++)
                            {
                                ArtistCredits item = results.ArtistCredits.ElementAt(i);
                                if (
                                    objItem.ArtistCredits.Any(
                                        x => x.Title.ToUpperInvariant() == item.Title.ToUpperInvariant()) == false)
                                {
                                    objItem.ArtistCredits.Add(item);
                                }
                            }
                        }

                        if (results.BirthDay != null)
                        {
                            objItem.BirthDay = results.BirthDay;
                        }

                        if (String.IsNullOrWhiteSpace(results.Bio) == false)
                        {
                            objItem.Bio = results.Bio;
                        }

                        if (String.IsNullOrWhiteSpace(results.Breast) == false)
                        {
                            objItem.Breast = results.Breast;
                        }

                        if (String.IsNullOrWhiteSpace(results.Ethnicity) == false)
                        {
                            objItem.Ethnicity = results.Ethnicity;
                        }

                        objItem.FulleName = strSearch;

                        if (String.IsNullOrWhiteSpace(results.PlaceBirth) == false)
                        {
                            objItem.PlaceBirth = results.PlaceBirth;
                        }

                        if (String.IsNullOrWhiteSpace(results.WebSite) == false)
                        {
                            objItem.WebSite = results.WebSite;
                        }

                        if (String.IsNullOrWhiteSpace(results.YearsActive) == false)
                        {
                            objItem.YearsActive = results.YearsActive;
                        }
                    }

                    #endregion
                }
                catch (Exception ex)
                {
                    Util.LogException(ex);
                }
            }
        }
예제 #3
0
        public void GetInfoFromWeb(IMyCollectionsData item)
        {
            bool bFind = false;

            XXX objEntity = item as XXX;

            if (objEntity == null)
            {
                return;
            }

            if (objEntity.IsComplete == false)
            {
                string strSearch = objEntity.Title;

                if (MySettings.CleanTitle == true)
                {
                    strSearch = Util.CleanExtensions(strSearch);
                }

                string search = strSearch;
                Task.Factory.StartNew(() => Util.NotifyEvent("getInfoFromWeb: XXX : " + search));

                Hashtable objResults = null;
                #region AdultDvdEmpire
                if (MySettings.EnableAdultDvdEmpire == true)
                {
                    Collection <PartialMatche> results = AdultdvdempireServices.Search(strSearch);

                    if (results != null && results.Any())
                    {
                        objResults = AdultdvdempireServices.Parse(results[0].Link, true, strSearch);
                    }

                    if (objResults != null)
                    {
                        bFind = Fill(objResults, objEntity);
                    }
                }
                #endregion
                #region HotMovies
                if (bFind == false && MySettings.EnableHotMovies == true)
                {
                    Collection <PartialMatche> results = HotMoviesServices.Search(strSearch);

                    if (results != null && results.Any())
                    {
                        objResults = HotMoviesServices.Parse(results[0].Link, true);
                    }

                    if (objResults != null)
                    {
                        bFind = Fill(objResults, objEntity);
                    }
                }
                #endregion
                #region SugarVod
                if (bFind == false && MySettings.EnableSugardVod == true)
                {
                    Collection <PartialMatche> results = SugarVodServices.Search(strSearch);

                    if (results != null && results.Any())
                    {
                        objResults = SugarVodServices.Parse(results[0].Link, true, strSearch);
                    }

                    if (objResults != null)
                    {
                        bFind = Fill(objResults, objEntity);
                    }
                }
                #endregion SugarVod
                #region CdUniverse
                if (bFind == false && MySettings.EnableCdUniverse == true)
                {
                    Collection <PartialMatche> results = CdUniverseServices.Search(strSearch);

                    if (results != null && results.Any())
                    {
                        objResults = CdUniverseServices.Parse(results[0].Link, true, strSearch);
                    }

                    if (objResults != null)
                    {
                        bFind = Fill(objResults, objEntity);
                    }
                }
                #endregion
                #region Orgazmik
                if (bFind == false && MySettings.EnableOrgazmik == true)
                {
                    Collection <PartialMatche> results = OrgazmikServices.Search(strSearch);

                    if (results != null && results.Any())
                    {
                        objResults = OrgazmikServices.Parse(results[0].Link, true, strSearch);
                    }

                    if (objResults != null)
                    {
                        bFind = Fill(objResults, objEntity);
                    }
                }
                #endregion
                #region AdultBluRayHdDvd
                if (bFind == false && MySettings.EnableAdultBluRayHdDvd == true)
                {
                    Collection <PartialMatche> results = AdultBluRayHdDvdServices.Search(strSearch);

                    if (results != null && results.Any())
                    {
                        objResults = AdultBluRayHdDvdServices.Parse(results[0].Link, true);
                    }

                    if (objResults != null)
                    {
                        bFind = Fill(objResults, objEntity);
                    }
                }
                #endregion
                #region DorcelShop
                if (bFind == false && MySettings.EnableDorcelShop == true)
                {
                    Collection <PartialMatche> results = DorcelServices.Search(strSearch);

                    if (results != null && results.Any())
                    {
                        objResults = DorcelServices.Parse(results[0].Link, true, strSearch);
                    }

                    if (objResults != null)
                    {
                        bFind = Fill(objResults, objEntity);
                    }
                }
                #endregion
                #region Amazon FR
                if (bFind == false && MySettings.EnableAmazonFrXXX == true)
                {
                    strSearch = objEntity.Title;

                    if (MySettings.CleanTitle == true)
                    {
                        strSearch = Util.CleanExtensions(strSearch);
                    }

                    Collection <PartialMatche> results = AmazonServices.Search(strSearch, string.Empty, AmazonIndex.DVD, AmazonCountry.fr, AmazonBrowserNode.None);

                    if (results != null && results.Any())
                    {
                        objResults = AmazonServices.Parse(results[0].Link, AmazonCountry.fr, !string.IsNullOrWhiteSpace(objEntity.BarCode), AmazonIndex.DVD, string.Empty);
                    }

                    if (objResults != null)
                    {
                        bFind = Fill(objResults, objEntity);
                    }
                }
                #endregion
                #region TMDB
                if (bFind == false && MySettings.EnableTMDBXXX == true)
                {
                    Collection <PartialMatche> results = TheMovieDbServices.Search(strSearch, LanguageType.EN);

                    if (results != null && results.Any())
                    {
                        objResults = TheMovieDbServices.Parse(results[0].Link, LanguageType.EN);
                    }

                    if (objResults != null)
                    {
                        bFind = Fill(objResults, objEntity);
                    }
                }
                #endregion

                CommonServices.Update(objEntity);
            }
        }