public void Delete(bool Files) { SQL sQL = new SQL(); Query query = sQL.ExecQuery("SELECT id FROM series WHERE group_id=" + ID); while (query.NextResult()) { ComicSeries comicSeries = new ComicSeries((int)query.hash["id"]); comicSeries.Delete(Files); } query.Close(); sQL.ExecQuery("DELETE FROM groups WHERE id=" + ID); if (Settings.Default.OrganizeMethod != 0) { try { query = CC.SQL.ExecQuery("SELECT name FROM publishers WHERE id=" + PublisherID); string path = (string)query.hash[0]; query.Close(); Directory.Delete(Path.Combine(Settings.Default.LibraryDir, Path.Combine(path, Name))); } catch { } } }
private void SaveChanges() { MainForm mainForm = (MainForm)base.Owner; ComicIssue comicIssue = (ComicIssue)CC.Issues[CurrentIssue]; if (!comicIssue.Missing) { comicIssue.SeriesID = ComicSeries.GetID(cboSeries.Text, comicIssue.GroupID, comicIssue.PublisherID); ComicSeries comicSeries = new ComicSeries(comicIssue.SeriesID); comicIssue.GroupName = comicSeries.GroupName; comicIssue.PublisherName = comicSeries.PublisherName; comicIssue.SeriesName = cboSeries.Text; comicIssue.Name = txtPlot.Text; comicIssue.SeriesVolume = (int)udVol.Value; comicIssue.Number = (int)udNumber.Value; comicIssue.Type = cboType.SelectedIndex; comicIssue.Comments = txtComments.Text; if (chkPublished.Checked) { comicIssue.Published = datePublished.Value; } comicIssue.SaveChanges(); if (Settings.Default.OrganizeMethod != 0) { comicIssue.OrganizeFile(); } mainForm.IssueList.Refresh(); } }
/// <summary> /// Load series info into the form /// </summary> /// <param name="index">The id of the series to load</param> private void LoadSeries(int index) { SeriesIndex = index; ComicSeries comicSeries = (ComicSeries)CC.Series[index]; cboType.SelectedIndex = comicSeries.Type; txtName.Text = comicSeries.Name; cmdPrev.Enabled = (index != 0); cmdNext.Enabled = (index != CC.Series.Count - 1); }
//Save changes to the series private void SaveChanges() { ComicSeries comicSeries = (ComicSeries)CC.Series[SeriesIndex]; comicSeries.Name = txtName.Text; comicSeries.Type = cboType.SelectedIndex; if (comicSeries.SaveChanges()) { owner.SeriesList.Refresh(); } }
public void AutoTag() { Regex regex = new Regex("[^0-9]"); Regex regex2 = new Regex(CC.AutoTag.Pattern); Match match = regex2.Match(FileName); string value = match.Groups[CC.AutoTag.Matches[0]].Value; if (value != "") { PublisherName = value; } string value2 = match.Groups[CC.AutoTag.Matches[2]].Value; if (value2 != "") { SeriesName = value2; } string value3 = match.Groups[CC.AutoTag.Matches[1]].Value; if (value3 != "") { GroupName = value3; } string value4 = match.Groups[CC.AutoTag.Matches[4]].Value; if (value4 != "") { Name = value4; } try { Number = Convert.ToInt16(match.Groups[CC.AutoTag.Matches[5]].Value); } catch { } try { string value5 = match.Groups[CC.AutoTag.Matches[3]].Value; value5 = regex.Replace(value5, ""); SeriesVolume = Convert.ToInt16(value5); } catch { } if ((PublisherName == "") & CC.AutoTag.usePublisher) { PublisherName = CC.AutoTag.Publisher; } if ((SeriesName == "") & CC.AutoTag.useSeries) { SeriesName = CC.AutoTag.Series; } if ((GroupName == "") & CC.AutoTag.useGroup) { GroupName = CC.AutoTag.Group; } if ((Name == "") & CC.AutoTag.usePlot) { Name = CC.AutoTag.Plot; } if ((SeriesVolume == 0) & CC.AutoTag.useVolume) { SeriesVolume = CC.AutoTag.Volume; } if (SeriesName == "") { SeriesName = Path.GetFileNameWithoutExtension(FileName); } if ((SeriesVolume == 0) | (SeriesVolume >= 10)) { SeriesVolume = 1; } if (Number == 0) { Type = 2; } else if (Number.ToString().Length == 4) { Type = 1; } else { Type = 0; } for (int i = 0; i < Settings.Default.ReplaceKeys.Count; i++) { SeriesName = SeriesName.Replace(Settings.Default.ReplaceKeys[i], Settings.Default.ReplaceVals[i]); } PublisherID = ComicPublisher.GetID(PublisherName); GroupID = ComicGroup.GetID(GroupName, PublisherID, PublisherName); SeriesID = ComicSeries.GetID(SeriesName, GroupID, PublisherID); }
//When comparing series we only care about its name public int CompareTo(object o) { ComicSeries comicSeries = (ComicSeries)o; return(Name.CompareTo(comicSeries.Name)); }
private void OK_Button_Click(object sender, EventArgs e) { int num = -1; DateTime published = datePublished.Value; ComicIssue comicIssue = null; Cursor = Cursors.WaitCursor; for (int i = 0; i < MainForm.Root.IssueList.SelectedIndices.Count; i++) { comicIssue = (ComicIssue)CC.Issues[MainForm.Root.IssueList.SelectedIndices[i]]; //set the plot title of the issue if checked //(sorry for the three different naming conventions here) if (chkStory.Checked) { comicIssue.Name = txtPlot.Text; } //set series name of the issue if checked if (chkSeries.Checked) { //Find the ID of the selected Series if (num == -1) { num = ComicSeries.GetID(cboSeries.Text, comicIssue.GroupID, comicIssue.PublisherID); } comicIssue.SeriesID = num; comicIssue.SeriesName = cboSeries.Text; } //set comments if checked if (chkComments.Checked) { comicIssue.Comments = txtComments.Text; } //set volume if checked if (chkVol.Checked) { comicIssue.SeriesVolume = (int)udVol.Value; } //set published date if checked if (chkPublished.Checked) { comicIssue.Published = published; //If the Auto-Date feature is being used then we're assuming //that the selected issues were published a set amount of time apart, sequentially if (cboAutoDate.SelectedIndex != -1) { switch (cboAutoDate.Text) { case "Weekly": published = published.AddDays(7.0); break; case "Bi-Weekly": published = published.AddDays(14.0); break; case "Monthly": published = published.AddMonths(1); break; case "Bi-Monthly": published = published.AddMonths(2); break; case "Yearly": published = published.AddYears(1); break; } } } //set issue type if checked if (chkType.Checked) { comicIssue.Type = cboType.SelectedIndex; } //set issue number if checked if (chkNumber.Checked) { //we're assuming that the issues were published sequentially after the start value comicIssue.Number = (int)((decimal)i + udStart.Value); comicIssue.Type = 0; //Normal Issue } comicIssue.SaveChanges(); //Since we've made changes, the files may need to be renamed or moved in accordance with user prefs if (Settings.Default.OrganizeMethod != 0) { comicIssue.OrganizeFile(); } } Cursor = Cursors.Default; base.DialogResult = DialogResult.OK; Close(); }