private bool FindTitlesToConvert() { ClbEpisodes.Items.Clear(); var titles = TitlePersistence.ListTitles(TbxSeasonPattern.Text, TitleKind.Title); try { var regex = new Regex(TbxEpisodesRegexp.Text); foreach (var t in titles) { var matches = regex.Match(t.TitleName); if (matches.Success && matches.Groups.Count > 2) { int season = matches.Groups["s"].Value.To <int>(0); int disk = matches.Groups["d"].Value.To <int>(0); int episode = matches.Groups["e"].Value.To <int>(0); if (disk > 0 || episode > 0) { t.Season = season; t.Disk = disk; t.EpisodeOrTrack = episode; t.Kind = (episode > 0) ? TitleKind.Episode : TitleKind.Disk; ClbEpisodes.Items.Add(t, true); } } } } catch (Exception e) { MessageBox.Show(e.Message, "Error searching fro episodes/disks"); } return(ClbEpisodes.Items.Count > 0); }
private void CheckSeries(string seriesName) { m_title = null; var ss = TitlePersistence.ListTitles(seriesName, TitleKind.Series); if (ss != null && ss.Count == 1) { m_title = ss[0]; BtnCreateSeasons.Enabled = false; } }
private void BtnSearchForSeasons_Click(object sender, EventArgs e) { var seasonNumbersFound = new HashSet <int>(); var seasonNumbersNotFound = new HashSet <int>(); string sqlPattern = TbxSeasonPattern.Text; CheckSeries(TbxSeries.Text); //Search for pattern foundSeasons = TitlePersistence.ListTitles(sqlPattern, TitleKind.Season); ClbSeasons.Items.Clear(); foreach (var title in foundSeasons) { ClbSeasons.Items.Add(title, !title.ParentTitleId.HasValue); seasonNumbersFound.Add(title.Season); } //Search for pattern var titlesDisks = TitlePersistence.ListTitles(sqlPattern, TitleKind.Disk); var titlesEpisodes = TitlePersistence.ListTitles(sqlPattern, TitleKind.Episode); ClbEpisodes.Items.Clear(); foreach (var d in titlesDisks) { ClbEpisodes.Items.Add(d, !d.ParentTitleId.HasValue); int s = d.Season; if (s > 0 && !seasonNumbersFound.Contains(s)) { seasonNumbersNotFound.Add(s); } } foreach (var ep in titlesEpisodes) { ClbEpisodes.Items.Add(ep, !ep.ParentTitleId.HasValue); int s = ep.Season; if (s > 0 && !seasonNumbersFound.Contains(s)) { seasonNumbersNotFound.Add(s); } } var sb = new StringBuilder(seasonNumbersNotFound.Count * 2); TbxSeasonsToCreate.Text = string.Join(", ", seasonNumbersNotFound.OrderBy(i => i)); BtnCreateSeasons.Enabled = seasonNumbersNotFound.Count > 0; }
// // GET: /Home/ public ActionResult Index() { var titles = TitlePersistence.ListTitles(null, TitleKind.Title); return(View()); }