Rename-isWrongYear

EyeThreshold
This commit is contained in:
2023-06-24 09:07:11 -07:00
parent b4c1a05869
commit ddcb5b479a
12 changed files with 100 additions and 26 deletions

View File

@ -154,12 +154,14 @@ public class Rename
DateTime dateTime;
string seasonName;
string? directory;
bool? isWrongYear;
TimeSpan? timeSpan;
string directoryName;
DateTime?[] dateTimes;
FileHolder fileHolder;
string[]? ffmpegFiles;
string seasonDirectory;
bool isIgnoreExtension;
string? seasonDirectory;
const string jpg = ".jpg";
DateTime? minimumDateTime;
string checkFileExtension;
@ -167,6 +169,7 @@ public class Rename
DateTime? dateTimeOriginal;
const string jpeg = ".jpeg";
List<string> distinct = new();
string[] directoryNameSegments;
bool isValidImageFormatExtension;
bool nameWithoutExtensionIsIdFormat;
DateTime? metadataMinimumDateTime = null;
@ -272,7 +275,10 @@ public class Rename
if (minimumDateTime is null)
break;
if (dateTimeOriginal is not null && dateTimeFromName is not null)
timeSpan = new(Math.Abs(minimumDateTime.Value.Ticks - new long[] { dateTimeOriginal.Value.Ticks, dateTimeFromName.Value.Ticks }.Min()));
{
timeSpan = new(Math.Abs(dateTimeOriginal.Value.Ticks - dateTimeFromName.Value.Ticks));
timeSpan = timeSpan.Value.TotalMinutes > _AppSettings.MaxMinutesDelta ? null : new(Math.Abs(minimumDateTime.Value.Ticks - new long[] { dateTimeOriginal.Value.Ticks, dateTimeFromName.Value.Ticks }.Min()));
}
else if (dateTimeFromName is not null)
timeSpan = new(Math.Abs(minimumDateTime.Value.Ticks - dateTimeFromName.Value.Ticks));
else if (dateTimeOriginal is not null)
@ -290,7 +296,18 @@ public class Rename
else
timeSpan = new(Math.Abs(minimumDateTime.Value.Ticks - metadataMinimumDateTime.Value.Ticks));
}
if (timeSpan is null || timeSpan.Value.TotalMinutes >= _AppSettings.MaxMinutesDelta)
if (timeSpan is null || timeSpan.Value.TotalMinutes > _AppSettings.MaxMinutesDelta)
(isWrongYear, seasonDirectory) = (null, null);
else
{
directoryName = Path.GetFileName(fileHolder.DirectoryName);
directoryNameSegments = directoryName.Split(' ');
(isWrongYear, _) = Shared.Models.Stateless.Methods.IProperty.IsWrongYear(directoryNameSegments, string.Empty);
dateTime = minimumDateTime.Value.AddTicks(timeSpan.Value.Ticks);
(season, seasonName) = Shared.Models.Stateless.Methods.IProperty.GetSeason(dateTime.DayOfYear);
seasonDirectory = Path.Combine(fileHolder.DirectoryName, $"{dateTime.Year}.{season} {seasonName}");
}
if (seasonDirectory is null || isWrongYear is null || isWrongYear.Value)
{
if (metadataMinimumDateTime is null)
break;
@ -312,9 +329,6 @@ public class Rename
{
if (id is null)
continue;
dateTime = minimumDateTime.Value.AddTicks(timeSpan.Value.Ticks);
(season, seasonName) = Shared.Models.Stateless.Methods.IProperty.GetSeason(dateTime.DayOfYear);
seasonDirectory = Path.Combine(fileHolder.DirectoryName, $"{dateTime.Year}.{season} {seasonName}");
if (ffmpegFiles is not null)
{
foreach (string ffmpegFile in ffmpegFiles)