Exemple #1
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">Episode name</param>
 /// <param name="url">Episode address</param>
 /// <param name="path">Episode local path</param>
 /// <param name="result">Result of download attempt</param>
 public EpisodeDetailEventArgs(string name, string url, string path, EpisodeResult result)
 {
     Name         = name;
     Url          = url;
     DownloadPath = path;
     Result       = result;
 }
Exemple #2
0
        private void ImageButton_Clicked(object sender, EventArgs e)
        {
            EpisodeResult episodeResult = ((EpisodeResult)((ImageButton)sender).BindingContext);

            PushPage(episodeResult);
            //  PlayEpisode(episodeResult);
        }
Exemple #3
0
        private void ViewCell_Tapped(object sender, EventArgs e)
        {
            EpisodeResult episodeResult = (EpisodeResult)(((ViewCell)sender).BindingContext);

            _ = HandleEpisode(episodeResult);
            episodeView.SelectedItem = null;
        }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">Episode name</param>
 /// <param name="url">Episode address</param>
 /// <param name="path">Episode local path</param>
 /// <param name="result">Result of download attempt</param>
 public EpisodeDetailEventArgs(string name, string url, string path, EpisodeResult result)
 {
     Name = name;
     Url = url;
     DownloadPath = path;
     Result = result;
 }
Exemple #5
0
        private void ImageButton_Clicked(object sender, EventArgs e)
        {
            EpisodeResult episodeResult = ((EpisodeResult)((ImageButton)sender).BindingContext);

            PushPageFromUrlAndName(FindShortend(episodeResult.extraInfo, "Id"), FindShortend(episodeResult.extraInfo, "Name"));

            //  PlayEpisode(episodeResult);
        }
Exemple #6
0
        public List <string> RetrieveVideoSource(EpisodeResult episodeResult)
        {
            var html    = _client.DownloadString(BaseUri + episodeResult.PageUrl);
            var dom     = CQ.CreateDocument(html);
            var results = new List <string> {
                BaseUri + dom.Select("video").Attr("src").Replace(" ", "%20")
            };

            return(results);
        }
Exemple #7
0
        private void ViewCell_Tapped(object sender, EventArgs e)
        {
            EpisodeResult episodeResult = (EpisodeResult)(((ViewCell)sender).BindingContext);

            PushPageFromUrlAndName(FindShortend(episodeResult.extraInfo, "Id"), FindShortend(episodeResult.extraInfo, "Name"));

            // EpsodeShow(episodeResult);
            //EpisodeResult episodeResult = ((EpisodeResult)((ImageButton)sender).BindingContext);
            //App.PlayVLCWithSingleUrl(episodeResult.mirrosUrls[0], episodeResult.Title);
            //episodeView.SelectedItem = null;
        }
Exemple #8
0
        public List <string> RetrieveVideoSource(EpisodeResult episodeResult)
        {
            var html       = _client.DownloadString(episodeResult.PageUrl);
            var dom        = CQ.CreateDocument(html);
            var rapidVideo = dom.Select(".rapidvideo a").Attr("data-video");
            var result     = _rapidVideo.GetVideoSource(rapidVideo);
            var results    = new List <string> {
                result
            };

            return(results);
        }
Exemple #9
0
        protected override void ProcessRecord()
        {
            string full = this.ParameterSetName != "ByEpisodeId"
                ? string.Format(EP_BY_SERIES, this.SeriesId)
                : string.Format(EP_BY_EP, this.EpisodeId);

            string jsonStr = base.TryGetSonarrResult(full);

            if (!string.IsNullOrEmpty(jsonStr))
            {
                List <EpisodeResult> result = SonarrHttp.ConvertToSonarrResults <EpisodeResult>(jsonStr, out bool iso);
                foreach (EpisodeResult er in result)
                {
                    if (er.AirDateUtc.HasValue)
                    {
                        er.AirDateUtc = er.AirDateUtc.Value.ToUniversalTime();
                    }
                }
                if (this.MyInvocation.BoundParameters.ContainsKey("AbsoluteEpisodeNumber"))
                {
                    IEnumerable <EpisodeResult> results = result.Where(x => x.AbsoluteEpisodeNumber.HasValue && this.AbsoluteEpisodeNumber.Contains(x.AbsoluteEpisodeNumber.Value));
                    base.WriteObject(results, true);
                }

                else if (this.MyInvocation.BoundParameters.ContainsKey("EpisodeIdentifier"))
                {
                    var list = new List <EpisodeResult>(result.Count);
                    for (int i = 0; i < this.EpisodeIdentifier.Length; i++)
                    {
                        EpisodeIdentifier epid = this.EpisodeIdentifier[i];
                        for (int e = 0; e < result.Count; e++)
                        {
                            EpisodeResult er = result[e];
                            if (er.SeasonNumber == epid.Season)
                            {
                                if (!epid.Episode.HasValue || (epid.Episode.HasValue && er.EpisodeNumber == epid.Episode.Value))
                                {
                                    list.Add(er);
                                }
                            }
                        }
                    }
                    list.Sort(new EpisodeComparer());
                    var ieq = new EpisodeEquality();
                    base.WriteObject(list.Distinct(ieq), true);
                }

                else
                {
                    base.WriteObject(result, true);
                }
            }
        }
Exemple #10
0
        public List <string> RetrieveVideoSource(EpisodeResult episodeResult)
        {
            var html       = _client.DownloadString(BaseUri + episodeResult.PageUrl);
            var dom        = CQ.CreateDocument(html);
            var rapidVideo = dom.Select("#player > iframe").Attr("src");
            var result     = _rapidVideo.GetVideoSource(rapidVideo);
            var results    = new List <string> {
                result
            };

            return(results);
        }
Exemple #11
0
        void AddEpisode(EpisodeResult episodeResult, bool setHeight = true, bool setH = false, bool addtoGrid = false)
        {
            epView.MyEpisodeResultCollection.Add(episodeResult);


            /*
             *
             * // Device.BeginInvokeOnMainThread(() => {
             * var ff = new FFImageLoading.Forms.CachedImage {
             *  Source = episodeResult.PosterUrl,
             *  HeightRequest = POSTER_HIGHT,
             *  WidthRequest = POSTER_WIDTH,
             *  BackgroundColor = Color.Transparent,
             *  VerticalOptions = LayoutOptions.Start,
             *  Transformations = {
             *                  new FFImageLoading.Transformations.RoundedTransformation(10,1,1.5,10,"#303F9F")
             *              },
             *  InputTransparent = true,
             * };
             *
             * cachedImages.Add(ff);*/
            if (addtoGrid)
            {
                /*
                 * ItemGrid.Children.Add(ff);
                 * if (setH) {
                 *  SetChashedImagePos(ItemGrid.Children.Count - 1);
                 * }*/
            }

            if (setHeight)
            {
                SetHeight();
            }

            //});
        }
Exemple #12
0
 public void PushPage(EpisodeResult episodeResult)
 {
     PushPageFromUrlAndName(FindShortend(episodeResult.ExtraInfo, "Id"), FindShortend(episodeResult.ExtraInfo, "Name"));
 }
Exemple #13
0
 async Task AddEpisodeAsync(EpisodeResult episodeResult, bool setHeight = true, int delay = 10)
 {
     AddEpisode(episodeResult, setHeight);
     await Task.Delay(delay);
 }
Exemple #14
0
        async Task HandleEpisode(EpisodeResult episodeResult)
        {
            await Download.HandleEpisodeTapped(episodeResult.Id);

            UpdateEpisodes();
        }