public bool SaveChanges() { ArrayList arrayList = new ArrayList(); if (Changes.Count > 0) { if (Changes.Contains("Name")) { arrayList.Add("name='" + SQL.Prepare(iName) + "'"); } if (Changes.Contains("Type")) { arrayList.Add("type=" + iType); Changes.Remove("Type"); } CC.SQL.ExecQuery("UPDATE series SET " + string.Join(",", CC.StringList(arrayList)) + " WHERE id=" + ID); if (Settings.Default.OrganizeMethod != 0) { if (Changes.Contains("Name")) { //Rename folders string text = Settings.Default.LibraryDir + "\\" + CC.URLize(PublisherName) + "\\" + CC.URLize(GroupName) + "\\" + CC.URLize(OldName) + "\\"; string text2 = Settings.Default.LibraryDir + "\\" + CC.URLize(PublisherName) + "\\" + CC.URLize(GroupName) + "\\" + CC.URLize(Name) + "\\"; CC.SQL.ExecQuery("UPDATE issues SET filename=" + CC.SQLReplaceLeft("filename", text, text2)); CC.Rename(text, text2); } Changes.Remove("Name"); } return(true); } return(false); }
public void AdoptSeries(ArrayList Series) { SQL sQL = new SQL(); string text = Settings.Default.LibraryDir + "\\" + CC.URLize(PublisherName) + "\\" + CC.URLize(Name); string text2 = ""; ArrayList arrayList = new ArrayList(); foreach (ComicSeries item in Series) { if (Settings.Default.OrganizeMethod != 0) { text2 = Settings.Default.LibraryDir + "\\" + CC.URLize(item.PublisherName) + "\\" + CC.URLize(item.GroupName); sQL.ExecQuery("UPDATE issues SET filename=" + CC.SQLReplaceLeft("filename", text2, text) + " WHERE series_id=" + item.ID); try { Directory.Move(text2 + "\\" + CC.URLize(item.Name), text + "\\" + CC.URLize(item.Name)); } catch { } } arrayList.Add(Convert.ToString(item.ID)); item.GroupID = ID; item.GroupName = Name; } sQL.ExecQuery("UPDATE series SET group_id=" + ID + ", pub_id=" + PublisherID + " WHERE id IN (" + string.Join(",", CC.StringList(arrayList)) + ")"); }
//Determine what the filepath of the issue should be public string GenerateFilename() { string libraryDir = Settings.Default.LibraryDir; string text = null; Query query = null; string str = CC.URLize(SeriesName); string text2 = CC.URLize(Name); string text3 = null; int num = 0; libraryDir += "\\"; libraryDir = libraryDir + PublisherName + "\\"; libraryDir = libraryDir + GroupName + "\\"; libraryDir = libraryDir + str + "\\"; libraryDir += str; if (SeriesType != 2) { query = CC.SQL.ExecQuery("SELECT DISTINCT series_vol FROM issues WHERE series_id=" + SeriesID); query.NextResult(); if (query.NextResult()) { libraryDir = libraryDir + " v" + SeriesVolume; } query.Close(); switch (Type) { case 0: libraryDir = libraryDir + " #" + Number.ToString("000"); break; case 1: libraryDir = libraryDir + " Annual " + Number; break; case 2: if (text2 != "") { libraryDir = libraryDir + " " + text2; } break; } if ((text2 != "") & (Type != 2)) { libraryDir = libraryDir + " (" + text2 + ")"; } } text3 = CC.GetArchiveType(FileName); text = libraryDir; if (FileName != libraryDir + text3) { while (File.Exists(text + text3)) { num++; text = libraryDir + " " + num; } return text + text3; } return FileName; }
public bool SaveChanges() { ArrayList arrayList = new ArrayList(); //SQL sQL = new SQL(); if (Changes.Count > 0) { if (Changes.Contains("Name")) { arrayList.Add("name='" + SQL.Prepare(iName) + "'"); } if (Changes.Contains("PublisherID")) { arrayList.Add("pub_id='" + iPublisherID + "'"); CC.SQL.ExecQuery("UPDATE series SET pub_id=" + iPublisherID + " WHERE group_id=" + ID); } CC.SQL.ExecQuery("UPDATE groups SET " + string.Join(",", CC.StringList(arrayList)) + " WHERE id=" + ID); if (Settings.Default.OrganizeMethod != 0) { Query query = CC.SQL.ExecQuery("SELECT name FROM publishers WHERE id=" + PublisherID); query.NextResult(); string name = (string)query.hash[0]; query.Close(); if (Changes.Contains("Name")) { string text = Settings.Default.LibraryDir + "\\" + CC.URLize(name) + "\\" + CC.URLize(OldName) + "\\"; string text2 = Settings.Default.LibraryDir + "\\" + CC.URLize(name) + "\\" + CC.URLize(Name) + "\\"; CC.SQL.ExecQuery("UPDATE issues SET filename=" + CC.SQLReplaceLeft("filename", text, text2)); CC.Rename(text, text2); } if (Changes.Contains("PublisherID")) { query = CC.SQL.ExecQuery("SELECT name FROM publishers WHERE id=" + OldPublisherID); query.NextResult(); string name2 = (string)query.hash[0]; query.Close(); string text = Settings.Default.LibraryDir + "\\" + CC.URLize(name2) + "\\" + CC.URLize(Name) + "\\"; string text2 = Settings.Default.LibraryDir + "\\" + CC.URLize(name) + "\\" + CC.URLize(Name) + "\\"; CC.SQL.ExecQuery("UPDATE issues SET filename=" + CC.SQLReplaceLeft("filename", text, text2)); CC.Rename(text, text2); } } Changes.Remove("Name"); Changes.Remove("PublisherID"); return(true); } return(false); }
//Delete a series and its issues public void Delete(bool Files) { SQL sQL = new SQL(); Query query = sQL.ExecQuery("SELECT id FROM issues WHERE series_id=" + ID); while (query.NextResult()) { ComicIssue comicIssue = new ComicIssue((int)query.hash["id"]); comicIssue.Delete(Files); } sQL.ExecQuery("DELETE FROM series WHERE id=" + ID); if (Settings.Default.OrganizeMethod != 0) { try { //Delete folder for series if file org is turned on Directory.Delete(Settings.Default.LibraryDir + "\\" + CC.URLize(PublisherName) + "\\" + CC.URLize(GroupName) + "\\" + CC.URLize(Name)); } catch { } } }