public MainWindowViewModel() { TvdbHandler = new TvdbHandler("49FF3082EF06CF50"); GetShowsFromIsolatedStorage(); SelectedDayEpisodes = new ObservableCollection<String>(); GetDayEpisodes(DateTime.Today); }
void UpdateFormFinishedThreadSafe(TvdbHandler.UpdateFinishedEventArgs _event) { if (!InvokeRequired) { try { cmdAbortUpdate.Enabled = false; StringBuilder b = new StringBuilder(); b.AppendLine("Update finished in " + (_event.UpdateFinished - _event.UpdateStarted).TotalSeconds + " seconds"); b.AppendLine("Updated the following (" + _event.UpdatedSeries.Count + ") series"); b.AppendLine("=============================="); foreach (int s in _event.UpdatedSeries) { b.AppendLine(s.ToString()); } b.AppendLine(""); b.AppendLine("Updated the following (" + _event.UpdatedEpisodes.Count + ") episodes"); b.AppendLine("=============================="); foreach (int e in _event.UpdatedEpisodes) { b.AppendLine(e.ToString()); } txtUpdateProgress.Text = b.ToString(); cmdApply.Enabled = true; } catch (Exception ex) { Console.WriteLine(ex.ToString()); } } else Invoke(new UpdateFormFinishedThreadSafeDelegate(UpdateFormFinishedThreadSafe), new object[] { _event }); }
private bool DownloadImage(string serverPath, string title, int season, int episode) { string apiKey = ConfigurationManager.AppSettings["tvdb.API.key"]; if (string.IsNullOrWhiteSpace(apiKey)) return false; var handler = new TvdbHandler(apiKey); var downloader = new TvdbDownloader(apiKey); var searchResult = handler.SearchSeries(title); if (searchResult != null && searchResult.Count > 0) { var result = searchResult.First(); int sId = result.Id; var banner = GetLoadedBanner(downloader, sId, season, episode, result.Banner); if (banner == null) return false; banner.BannerImage.Save(serverPath); return true; } return false; }
private void cmdInit_Click(object sender, EventArgs e) { m_tvdbHandler = new TvdbHandler(new XmlCacheProvider("C:\\test"), "E8D8A47528D5B5AD"); m_tvdbHandler.InitCache(); cmdEnd.Enabled = true; cmdLoadSeries.Enabled = true; }
public MemoryTest() { InitializeComponent(); m_rootFolder = Application.StartupPath + "\\Cache"; m_tvdbHandler = new TvdbHandler(new XmlCacheProvider(m_rootFolder), File.ReadAllText("api_key.txt")); m_loadedSeries = new Dictionary<int, TvdbSeries>(); }
public UpdateForm(TvdbHandler _handler, Interval _interval, bool _useZip) { InitializeComponent(); m_tvdbHandler = _handler; m_interval = _interval; m_useZip = _useZip; cmdApply.Enabled = false; cmdAbortUpdate.Enabled = true; m_tvdbHandler.UpdateProgressed += new TvdbHandler.UpdateProgressDelegate(m_tvdbHandler_UpdateProgressed); m_tvdbHandler.UpdateFinished += new TvdbHandler.UpdateFinishedDelegate(m_tvdbHandler_UpdateFinished); m_updateThread = new Thread(new ThreadStart(DoUpdating)); m_updateThread.Priority = ThreadPriority.BelowNormal; m_updateThread.Name = "Updating Thread"; m_updateThread.Start(); }
private void cmdInit_Click(object sender, EventArgs e) { m_tvdbHandler = new TvdbHandler(new XmlCacheProvider("C:\\test"), Resources.API_KEY); m_series = m_tvdbHandler.GetBasicSeries(80370, TvdbLanguage.DefaultLanguage, true); int count = 0; fanartControl1.NumberOfImages = m_series.FanartBanners.Count; foreach (TvdbFanartBanner fb in m_series.FanartBanners) { if(fb.IsThumbLoaded || fb.LoadThumb()) { fanartControl1.SetImage(fb, count); count++; } } }
public EPG_Control_V3(string SourceDirectory) { this.sourceDirectory = SourceDirectory; currentTime = DateTime.Now; lastTime = DateTime.Now.AddHours(4); incrementalTime = new System.TimeSpan(0, 30, 0); epg_Data = new EPG_Program_Channel(); epg_Times = new EPG_Time(); epg_SelectedItem = new EPG_SelectedItem(); tvdbHandler = new TvdbHandler(new XmlCacheProvider("C:\\test"), "572328F18DC4374A"); tvdbHandler.InitCache(); client = new TMDbClient("ecaa9ae8c8346269b53c80e2a61aa0ea"); client.GetConfig(); epg_ChannelIndex = 0; epg_ProgramIndex = 0; }
public static TvdbHandler GetTvdbHandler() { if (m_tvdbHandler == null) { //using caching. if (m_cacheProvider == null) { //setup caching folder in App_Data. string rootFolder = HttpContext.Current.Server.MapPath("~/App_Data/TVDB"); if (!Directory.Exists(rootFolder)) Directory.CreateDirectory(rootFolder); m_cacheProvider = new XmlCacheProvider(rootFolder); } //create new tvdbHandler. m_tvdbHandler = new TvdbHandler(m_cacheProvider, ConfigurationManager.AppSettings["TVDB_API_KEY"]); } return m_tvdbHandler; }
public EPG_Control_V4(string SourceDirectory) { this.sourceDirectory = SourceDirectory;; if (DateTime.Now.Minute < 30) currentTime = DateTime.Now.AddMinutes(-DateTime.Now.Minute); else currentTime = DateTime.Now.AddMinutes(30 - DateTime.Now.Minute); currentSelectedTime = currentTime; lastTime = currentTime.AddHours(2); currentChannel = 0; lastChannel = 2; incrementalTime = new System.TimeSpan(0, 30, 0); epg_Data = new EPG_Program_Channel(); epg_Times = new EPG_Time(); epg_SelectedItem = new EPG_SelectedItem(); tvdbHandler = new TvdbHandler(new XmlCacheProvider("C:\\test"), "572328F18DC4374A"); tvdbHandler.InitCache(); client = new TMDbClient("ecaa9ae8c8346269b53c80e2a61aa0ea"); client.GetConfig(); }
public TVDBTVShowMetadataSource(IFileSystem fileSystem, string apiKey) { // Set fileSystem. _fileSystem = fileSystem; // Make cache directory. var assemblyName = Assembly.GetExecutingAssembly().GetName().Name; _tvdbCacheDirectory = _fileSystem.DirectoryInfo.FromDirectoryName(_fileSystem.Path.Combine(_fileSystem.Path.GetTempPath(), assemblyName + _fileSystem.Path.DirectorySeparatorChar +"TVDBCache")); if(!_tvdbCacheDirectory.Exists) { _tvdbCacheDirectory.Create(); } // Initalise handler with cache. _tvdbHandler = new TvdbHandler(new XmlCacheProvider(_tvdbCacheDirectory.FullName), apiKey); if(!_tvdbHandler.IsCacheInitialised) { _tvdbHandler.InitCache(); } }
public Dvd getDvdDetails(string volumeTitle) { var api = new TheMovieDB.TmdbAPI(_movieApiKey); var movies = api.MovieSearch(volumeTitle); if (movies.Length > 0) { var movie = movies[0]; var info = api.GetMovieInfo(movie.Id); var tags = from c in info.Categories where c.Type == "genre" select c.Name; var returnDvd = new Dvd { Id = movie.Id, Title = movie.Name, Year = string.Format("{0:yyyy}", info.Released), Tags = tags.ToArray<string>(), Type = DvdType.Movie }; return returnDvd; } else { var tvdb = new TvdbHandler(null, _tvApiKey); var tvdbSearchResult = tvdb.SearchSeries(volumeTitle); var seriesIds = tvdbSearchResult.ToDictionary(result => result.Id, result => result.SeriesName); foreach (var seriesId in seriesIds) { var series = tvdb.GetSeries(seriesId.Key, TvdbLanguage.DefaultLanguage, true, false, false); foreach (var episode in series.GetEpisodesAbsoluteOrder()) { //Console.WriteLine("Series: {0}\n\rName: {1}\n\rId: {2}\n\rNumber: {3}\n\rGenre: {4}\n\r\n\r", // seriesId.Value, // episode.EpisodeName, // episode.Id, // episode.EpisodeNumber, // series.GenreString); //Console.WriteLine(episode.ToString()); } } return new Dvd() { Type = DvdType.Tv, Year = tvdbSearchResult[0].FirstAired.ToString() }; } }
public EPG_Control_V2(string SourceDirectory) { this.sourceDirectory = SourceDirectory; epg_Data = new EPG_Program_Channel(); epg_Times = new EPG_Time(); epg_SelectedItem = new EPG_SelectedItem(); tvdbHandler = new TvdbHandler(new XmlCacheProvider("C:\\test"), "572328F18DC4374A"); tvdbHandler.InitCache(); client = new TMDbClient("ecaa9ae8c8346269b53c80e2a61aa0ea"); client.GetConfig(); epg_ChannelIndex = 0; epg_ProgramIndex = 0; incTimeSpan = new TimeSpan(0, 30, 0); int ts = 0; if (DateTime.Now.Minute < 30) ts = -(DateTime.Now.Minute); else ts = 30 - DateTime.Now.Minute; currentTime = DateTime.Now.AddMinutes(ts); lastTime = currentTime.AddHours(2); }
void m_tvdbHandler_UpdateFinished(TvdbHandler.UpdateFinishedEventArgs _event) { UpdateFormFinishedThreadSafe(_event); }
void m_tvdbHandler_UpdateProgressed(TvdbHandler.UpdateProgressEventArgs _event) { UpdateFormThreadSafe(_event); }
void UpdateFormThreadSafe(TvdbHandler.UpdateProgressEventArgs _event) { try { if (!InvokeRequired) { switch (_event.CurrentUpdateStage) { case TvdbHandler.UpdateProgressEventArgs.UpdateStage.downloading: lblUpdateStage.Text = "Downloading updates"; break; case TvdbHandler.UpdateProgressEventArgs.UpdateStage.seriesupdate: lblUpdateStage.Text = "Updating series"; break; case TvdbHandler.UpdateProgressEventArgs.UpdateStage.episodesupdate: lblUpdateStage.Text = "Updating episode"; break; case TvdbHandler.UpdateProgressEventArgs.UpdateStage.bannerupdate: lblUpdateStage.Text = "Updating banners"; break; case TvdbHandler.UpdateProgressEventArgs.UpdateStage.finishupdate: lblUpdateStage.Text = "Updating Finished"; break; } ibUpdateProgress.BarFillProcent = _event.CurrentStageProgress; txtUpdateProgress.Text = _event.CurrentUpdateDescription; } else Invoke(new UpdateFormThreadSafeDelegate(UpdateFormThreadSafe), new object[] { _event }); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } }
void UpdateFormFinishedThreadSafe(TvdbHandler.UpdateFinishedEventArgs _event) { if (!InvokeRequired) { m_updatedEpisodes = _event.UpdatedEpisodes; m_updatedSeries = _event.UpdatedSeries; //store all updated series in a list foreach (int s in _event.UpdatedSeries) { m_afterUpdateList.Add(m_tvdbHandler.GetSeries(s, TvdbLanguage.DefaultLanguage, true, true, true)); } for (int i = 0; i < lvCachedSeries.Items.Count; i++) { if (_event.UpdatedSeries.Contains((int)lvCachedSeries.Items[i].Tag)) { lvCachedSeries.Items[i].BackColor = Color.Orange; } } } else Invoke(new UpdateFormFinishedThreadSafeDelegate(UpdateFormFinishedThreadSafe), new object[] { _event }); }
void m_tvdbHandler_UpdateFinished(TvdbHandler.UpdateFinishedEventArgs _event) { UpdateFormFinishedThreadSafe(_event); //throw new NotImplementedException(); }
public IEnumerable<Serie> GetSeries(string searchText) { TvdbHandler tvdbHandler = new TvdbHandler(null, _apiKey); var result = tvdbHandler.SearchSeries(searchText); return result.Select(x => new Serie { SerieId = x.Id, Name = x.SeriesName}); }
public SettingsWindow(TvdbHandler handler, ObservableCollection<TvdbSeries> shows) { ViewModel = new SettingsWindowViewModel(handler, shows); InitializeComponent(); }
private TvdbSeries LookupShow(string name) { Reporting.Log("Looking up show: " + name); TvdbHandler handler = new TvdbHandler(TvdbApiKey); List<TvdbSearchResult> results = handler.SearchSeries(name); TvdbSearchResult first = results.First(); return handler.GetBasicSeries(first.Id, TvdbLanguage.DefaultLanguage, true); }
private void init() { string cache = PluginSettings.TvDbLibCache; string tvdbid = "BBB734ABE146900D"; // mine, don't abuse it!!! tvdbHandler = new TvdbHandler(new XmlCacheProvider(cache),tvdbid); tvdbHandler.InitCache(); seriesNameMapping = PluginSettings.TvDbSeriesMappings; }
private void cmdInit_Click(object sender, EventArgs e) { m_tvdbHandler = new TvdbHandler(new XmlCacheProvider("C:\\test"), ""); m_tvdbHandler.InitCache(); cmdEnd.Enabled = true; }
public TvDbProvider(EnvironmentProvider environmentProvider) { _environmentProvider = environmentProvider; _handler = new TvdbHandler(new XmlCacheProvider(_environmentProvider.GetCacheFolder()), TVDB_APIKEY); }
private void cmdInit_Click(object sender, EventArgs e) { m_tvdbHandler = new TvdbHandler(new XmlCacheProvider("C:\\test"), File.ReadAllText("api_key.txt")); m_tvdbHandler.InitCache(); //m_tvdbHandler.ClearCache(); //m_tvdbHandler.GetBasicSeries(73545, TvdbLanguage.DefaultLanguage, false); //TvdbSeries s = m_tvdbHandler.GetSeries(73545, TvdbLanguage.DefaultLanguage, true, true, true); List<TvdbLanguage> lang = m_tvdbHandler.Languages; cmdTest1.Enabled = true; cmdTestZip.Enabled = true; cmdGetEpisodes.Enabled = true; cmdEnd.Enabled = true; cmdSetUser.Enabled = true; cmdGetEpisodeAired.Enabled = true; }
private TvdbEpisode LookupEpisode(TVShow Show, TVSeason Season, Int32 EpisodeNumber) { TvdbHandler Handler = new TvdbHandler(TvdbApiKey); return Handler.GetEpisode(Show.TvdbId, Season.SeasonNumber, EpisodeNumber, TvdbEpisode.EpisodeOrdering.DefaultOrder, TvdbLanguage.DefaultLanguage); }
private void revertToThisRevisionToolStripMenuItem_Click(object sender, EventArgs e) { CacheRevision rev = (CacheRevision)lbCacheSnapshots.SelectedItem; if (MessageBox.Show("Really revert to Revision " + rev.Name + " from " + rev.Date.ToShortDateString() + "?", "Revert", MessageBoxButtons.YesNo) == DialogResult.Yes) { m_tvdbHandler.CloseCache(); m_tvdbHandler = null; m_beforeUpdateList.Clear(); if (Directory.Exists(txtCacheLocation.Text)) { Directory.Delete(txtCacheLocation.Text, true); } FastZip zip = new FastZip(); zip.ExtractZip(rev.CreateFileName(), txtCacheLocation.Text, ""); InitTvdblibHandler(); } }
public SettingsWindowViewModel(TvdbHandler handler, ObservableCollection<TvdbSeries> shows) { TvdbHandler = handler; Shows = shows; }
/// <summary> /// Initialise the form /// </summary> /// <param name="_userId"></param> public void InitialiseForm(String _userId, ICacheProvider _provider) { //m_tvdbHandler = new Tvdb(new BinaryCacheProvider(@"cachefile.bin"), Resources.API_KEY);new XmlCacheProvider("XmlCache") m_tvdbHandler = new TvdbHandler(_provider, Resources.API_KEY); m_tvdbHandler.InitCache(); List<TvdbLanguage> m_languages = m_tvdbHandler.Languages; foreach (TvdbLanguage l in m_languages) { if (l.Abbriviation.Equals("en")) m_currentLanguage = l; cbLanguage.Items.Add(l); } lblCurrentLanguage.Text = "[" + m_currentLanguage.ToString() + "]"; //enable/disable community features if (_userId != null) { TvdbUser user = new TvdbUser("user", _userId); m_tvdbHandler.UserInfo = user; List<TvdbSeries> favList = null; try { user.UserPreferredLanguage = m_tvdbHandler.GetPreferredLanguage(); favList = m_tvdbHandler.GetUserFavorites(user.UserPreferredLanguage); } catch (TvdbInvalidApiKeyException ex) { MessageBox.Show(ex.Message); } catch (TvdbNotAvailableException ex) { MessageBox.Show(ex.Message); } if (favList != null) { foreach (TvdbSeries s in favList) { if (s != null) { cbUserFavourites.Items.Add(s); } } } } else { cbUserFavourites.Text = "No userinfo set"; cbUserFavourites.Enabled = false; } cmdAddRemoveFavorites.Enabled = false; cmdSendSeriesRating.Enabled = false; raterSeriesYourRating.Enabled = false; }
private TvdbEpisode LookupEpisode(int TvdbId, int SeasonNumber, int EpisodeNumber) { TvdbHandler handler = new TvdbHandler("572AD6335A69FAB2"); return handler.GetEpisode(TvdbId, SeasonNumber, EpisodeNumber, TvdbEpisode.EpisodeOrdering.DefaultOrder, TvdbLanguage.DefaultLanguage); }