private void newEpisode_Click(object sender, RoutedEventArgs e) { var items = episodes.Items.Cast <EpisodeRecord>().ToList(); var ep = new EpisodeRecord() { ShowId = _repo.getIdOfExistingShow(title) }; NewEpisode episode = new NewEpisode(); episode.DataContext = ep; episode.Closed += ChildWindowClosed; episode.Show(); }
async public Task <IResult <NewEpisode> > GetNewEpisodes(int Page = 1) { IResult <NewEpisode> Donut = null; var Liste = new NewEpisode(); var Req = new RestRequest("listeler/yenibolum/sayfa-" + Page.ToString()); var Res = this._HttpClient.Get(Req); if (Res.StatusCode != System.Net.HttpStatusCode.OK) { Donut = Result.Fail <NewEpisode>(Res.StatusDescription); } else { TextInfo ti = CultureInfo.CurrentCulture.TextInfo; var Document = await Res.Content.ConvertHTML(); var BolumlerHTMLS = Document.QuerySelectorAll(".flx-block"); Regex SezonAndBolum = new Regex(@"(.*?) ([\d]+). sezon ([\d]+). bölüm izle"); Regex OnlyBolum = new Regex(@"(.*?) ([\d]+). bölüm izle"); Regex Onlyizle = new Regex(@"(.*?) izle"); foreach (var BolumHTML in BolumlerHTMLS) { ShortEpisode ShortEpisode = new ShortEpisode(); var Chip = BolumHTML.QuerySelectorAll(".info-chip")[1].Text().ToLower().Trim().Replace(" ", ""); var Bol = Chip.Split('/'); if (Chip.Contains("böl")) { ShortEpisode.EpID = Bol[0].Replace("böl", "").Trim(); } else { ShortEpisode.EpID = Bol[0].Replace(" ", "").Trim(); } ShortEpisode.Name = BolumHTML.QuerySelector(".bar>h4").Text(); var TestSezonAndBolum = SezonAndBolum.Match(ShortEpisode.Name.ToLower()); if (TestSezonAndBolum.Success) { ShortEpisode.ShowName = ti.ToTitleCase(TestSezonAndBolum.Groups[1].Value); ShortEpisode.SeasonID = TestSezonAndBolum.Groups[2].Value; } else { var TestBolum = OnlyBolum.Match(ShortEpisode.Name.ToLower()); if (TestBolum.Success) { ShortEpisode.ShowName = ti.ToTitleCase(TestBolum.Groups[1].Value); } else { var TestIzle = Onlyizle.Match(ShortEpisode.Name.ToLower()); if (TestIzle.Success) { ShortEpisode.ShowName = ti.ToTitleCase(TestIzle.Groups[1].Value); } else { ShortEpisode.ShowName = ShortEpisode.Name; } } } ShortEpisode.Uri = BolumHTML.Attributes["data-href"].Value; ShortEpisode.Image = BolumHTML.QuerySelector("a>img").Attributes["src"].Value; Liste.Episodes.Add(ShortEpisode); } var PaginationHtml = Document.QuerySelectorAll(".pagination")[0]; Liste.Pagination.Current = Convert.ToInt32(PaginationHtml.QuerySelector(".active").Text()); Liste.Pagination.Max = Convert.ToInt32(PaginationHtml.QuerySelectorAll("li")[PaginationHtml.QuerySelectorAll("li").Length - 2].Text()); Donut = Result.Success(Liste); } return(Donut); }