Example #1
0
        /*
         *  public List<TvDB_ImageFanart> GetFanart(int seriesID, bool forceRefresh)
         *  {
         *      List<TvDB_ImageFanart> fanarts = new List<TvDB_ImageFanart>();
         *
         *      if (forceRefresh)
         *      {
         *          fanarts = GetFanartOnline(seriesID);
         *      }
         *      else
         *      {
         *          TvDB_ImageFanartRepository repFanart = new TvDB_ImageFanartRepository();
         *          fanarts = repFanart.GetBySeriesID(seriesID);
         *          if (fanarts.Count == 0)
         *              fanarts = GetFanartOnline(seriesID);
         *      }
         *
         *      return fanarts;
         *  }
         *
         *  public List<TvDB_ImageFanart> GetFanartOnline(int seriesID)
         *  {
         *      List<TvDB_ImageFanart> fanarts = new List<TvDB_ImageFanart>();
         *
         *      XmlDocument doc = GetSeriesBannersOnline(seriesID);
         *      List<object> banners = ParseBanners(seriesID, doc);
         *
         *      foreach (object obj in banners)
         *      {
         *          if (obj.GetType() == typeof(TvDB_ImageFanart))
         *              fanarts.Add((TvDB_ImageFanart)obj);
         *      }
         *
         *      return fanarts;
         *  }
         *
         *  public List<TvDB_ImageWideBanner> GetWideBannersOnline(int seriesID)
         *  {
         *      List<TvDB_ImageWideBanner> wideBanners = new List<TvDB_ImageWideBanner>();
         *
         *      XmlDocument doc = GetSeriesBannersOnline(seriesID);
         *      List<object> banners = ParseBanners(seriesID, doc);
         *
         *      foreach (object obj in banners)
         *      {
         *          if (obj.GetType() == typeof(TvDB_ImageWideBanner))
         *              wideBanners.Add((TvDB_ImageWideBanner)obj);
         *      }
         *
         *      return wideBanners;
         *  }
         *
         *  public List<TvDB_ImagePoster> GetPostersOnline(int seriesID)
         *  {
         *      //BaseConfig.MyAnimeLog.Write("Getting posters online: {0}", seriesID);
         *      List<TvDB_ImagePoster> posters = new List<TvDB_ImagePoster>();
         *
         *      XmlDocument doc = GetSeriesBannersOnline(seriesID);
         *      List<object> banners = ParseBanners(seriesID, doc);
         *
         *      foreach (object obj in banners)
         *      {
         *          if (obj.GetType() == typeof(TvDB_ImagePoster))
         *              posters.Add((TvDB_ImagePoster)obj);
         *      }
         *
         *      return posters;
         *  }
         */

        public List <TvDBLanguage> GetLanguages()
        {
            List <TvDBLanguage> languages = new List <TvDBLanguage>();

            try
            {
                Init();

                string url = string.Format(Constants.TvDBURLs.urlLanguagesXML, urlMirror, Constants.TvDBURLs.apiKey);
                logger.Trace("GetLanguages: {0}", url);

                // Search for a series
                string xmlSeries = Utils.DownloadWebPage(url, Encoding.UTF8);

                XmlDocument docLanguages = new XmlDocument();

                docLanguages.LoadXml(xmlSeries);

                XmlNodeList lanItems = docLanguages["Languages"].GetElementsByTagName("Language");

                //BaseConfig.MyAnimeLog.Write("Found {0} banner nodes", bannerItems.Count);

                if (lanItems.Count <= 0)
                {
                    return(languages);
                }

                foreach (XmlNode node in lanItems)
                {
                    TvDBLanguage lan = new TvDBLanguage();

                    lan.Name         = node["name"].InnerText.Trim();
                    lan.Abbreviation = node["abbreviation"].InnerText.Trim();
                    languages.Add(lan);
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex, "Error in TVDBHelper.GetSeriesBannersOnline: " + ex.ToString());
            }

            return(languages);
        }
Example #2
0
		public List<TvDBLanguage> GetLanguages()
		{
			List<TvDBLanguage> languages = new List<TvDBLanguage>();

			try
			{
				Init();

				string url = string.Format(Constants.TvDBURLs.urlLanguagesXML, urlMirror, Constants.TvDBURLs.apiKey);
				logger.Trace("GetLanguages: {0}", url);

				// Search for a series
				string xmlSeries = Utils.DownloadWebPage(url);

				XmlDocument docLanguages = new XmlDocument();
				docLanguages.LoadXml(xmlSeries);

				XmlNodeList lanItems = docLanguages["Languages"].GetElementsByTagName("Language");

				//BaseConfig.MyAnimeLog.Write("Found {0} banner nodes", bannerItems.Count);

				if (lanItems.Count <= 0)
					return languages;

				foreach (XmlNode node in lanItems)
				{
					TvDBLanguage lan = new TvDBLanguage();

					lan.Name = node["name"].InnerText.Trim();
					lan.Abbreviation = node["abbreviation"].InnerText.Trim();
					languages.Add(lan);
				}

			}
			catch (Exception ex)
			{
				logger.ErrorException("Error in TVDBHelper.GetSeriesBannersOnline: " + ex.ToString(), ex);
			}

			return languages;
		}