Compare commits
No commits in common. "46a0fb8c486dec4cd2c6af539518dd7657216cda" and "713bbc230fd09a70c911d81554aa19fe4e500efa" have entirely different histories.
46a0fb8c48
...
713bbc230f
@ -84,26 +84,24 @@ public readonly struct Chapter : IComparable
|
|||||||
/// <returns>true if chapter is present</returns>
|
/// <returns>true if chapter is present</returns>
|
||||||
internal bool CheckChapterIsDownloaded()
|
internal bool CheckChapterIsDownloaded()
|
||||||
{
|
{
|
||||||
string mangaDirectory = Path.Join(TrangaSettings.downloadLocation, parentManga.folderName);
|
if (!Directory.Exists(Path.Join(TrangaSettings.downloadLocation, parentManga.folderName)))
|
||||||
if (!Directory.Exists(mangaDirectory))
|
|
||||||
return false;
|
return false;
|
||||||
FileInfo[] archives = new DirectoryInfo(mangaDirectory).GetFiles("*.cbz");
|
FileInfo[] archives = new DirectoryInfo(Path.Join(TrangaSettings.downloadLocation, parentManga.folderName)).GetFiles().Where(file => file.Name.Split('.')[^1] == "cbz").ToArray();
|
||||||
Regex volChRex = new(@"(?:Vol(?:ume)?\.([0-9]+)\D*)?Ch(?:apter)?\.([0-9]+(?:\.[0-9]+)*)");
|
Regex volChRex = new(@"(?:Vol(?:ume)?\.([0-9]+)\D*)?Ch(?:apter)?\.([0-9]+(?:\.[0-9]+)*)");
|
||||||
|
|
||||||
Chapter t = this;
|
Chapter t = this;
|
||||||
string correctPath = GetArchiveFilePath();
|
string thisPath = GetArchiveFilePath();
|
||||||
FileInfo? archive = archives.FirstOrDefault(archive =>
|
FileInfo? archive = archives.FirstOrDefault(archive =>
|
||||||
{
|
{
|
||||||
Match m = volChRex.Match(archive.Name);
|
Match m = volChRex.Match(archive.Name);
|
||||||
/*Uncommenting this section will only allow *Version without Volume number* -> *Version with Volume number* but not the other way
|
string archiveVolNum = m.Groups[1].Success ? m.Groups[1].Value : "0";
|
||||||
if (m.Groups[1].Success)
|
string archiveChNum = m.Groups[2].Value;
|
||||||
return m.Groups[1].Value == t.volumeNumber && m.Groups[2].Value == t.chapterNumber;
|
return archiveVolNum == t.volumeNumber && archiveChNum == t.chapterNumber ||
|
||||||
else*/
|
archiveVolNum == "0" && archiveChNum == t.chapterNumber;
|
||||||
return m.Groups[2].Value == t.chapterNumber;
|
|
||||||
});
|
});
|
||||||
if(archive is not null && archive.FullName != correctPath)
|
if(archive is not null && thisPath != archive.FullName)
|
||||||
archive.MoveTo(correctPath, true);
|
archive.MoveTo(thisPath, true);
|
||||||
return (archive is not null);
|
return archive is not null;
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Creates full file path of chapter-archive
|
/// Creates full file path of chapter-archive
|
||||||
|
Loading…
Reference in New Issue
Block a user