public static TVDBSeries FromSearchResult(XElement element, string bannerRoot) { var series = new TVDBSeries(); series.SeriesId = ValueOrEmpty(element.Element("seriesid")); series.Language = ValueOrEmpty(element.Element("language")); series.SeriesName = ValueOrEmpty(element.Element("SeriesName")); series.Banner = ValueOrEmpty(element.Element("banner")); series.Overview = ValueOrEmpty(element.Element("Overview")); series.FirstAired = ValueOrEmpty(element.Element("FirstAired")); series.ImdbId = ValueOrEmpty(element.Element("IMDB_ID")); series.Zap2ItId = ValueOrEmpty(element.Element("zaip2it_id")); series.Id = ValueOrEmpty(element.Element("id")); if (series.Banner.Length != 0) { series.Banner = bannerRoot + series.Banner; } return series; }
public static TVDBSeries FromSearchResult(XElement element, string bannerRoot) { var series = new TVDBSeries(); series.SeriesId = ValueOrEmpty(element.Element("seriesid")); series.Language = ValueOrEmpty(element.Element("language")); series.SeriesName = ValueOrEmpty(element.Element("SeriesName")); series.Banner = ValueOrEmpty(element.Element("banner")); series.Overview = ValueOrEmpty(element.Element("Overview")); series.FirstAired = ValueOrEmpty(element.Element("FirstAired")); series.ImdbId = ValueOrEmpty(element.Element("IMDB_ID")); series.Zap2ItId = ValueOrEmpty(element.Element("zaip2it_id")); series.Id = ValueOrEmpty(element.Element("id")); if (series.Banner.Length != 0) { series.Banner = bannerRoot + series.Banner; } return(series); }
void UpdateFullMetadata(Task<TVDBSeries> task, CancellationToken token) { VerifyAccess(); if (task.Status != TaskStatus.RanToCompletion || token.IsCancellationRequested) { return; } this.seriesMetadata = task.Result; if (!String.IsNullOrWhiteSpace(task.Result.Banner)) { Backdrop = this.seriesMetadata.Banner; } else { Backdrop = stockBackdrop; } }
public override void SelectMetadata(object metadata) { TVDBSeries series = metadata as TVDBSeries; if (series != null) { if (this.metaCancellationToken != null) { this.metaCancellationToken.Cancel(); } this.metaCancellationToken = new CancellationTokenSource(); CancellationToken token = this.metaCancellationToken.Token; TVInfo.StartQueryMetadataDetails(series.SeriesId, token).ContinueWith( t => Dispatcher.BeginInvoke(UpdateFullMetadata, t, token), token); } else { this.seriesMetadata = null; Backdrop = stockBackdrop; } }