Another round of bugfixes (#3707)
This commit is contained in:
parent
cbb97208b8
commit
93dc6534fc
32 changed files with 412 additions and 335 deletions
|
@ -473,6 +473,7 @@ public class ReadingListService : IReadingListService
|
|||
_logger.LogInformation("Processing Reading Lists for {SeriesName}", series.Name);
|
||||
var user = await _unitOfWork.UserRepository.GetDefaultAdminUser();
|
||||
series.Metadata ??= new SeriesMetadataBuilder().Build();
|
||||
|
||||
foreach (var chapter in series.Volumes.SelectMany(v => v.Chapters))
|
||||
{
|
||||
var pairs = new List<Tuple<string, string>>();
|
||||
|
@ -578,14 +579,14 @@ public class ReadingListService : IReadingListService
|
|||
{
|
||||
CblName = cblReading.Name,
|
||||
Success = CblImportResult.Success,
|
||||
Results = new List<CblBookResult>(),
|
||||
Results = [],
|
||||
SuccessfulInserts = new List<CblBookResult>()
|
||||
};
|
||||
|
||||
if (IsCblEmpty(cblReading, importSummary, out var readingListFromCbl)) return readingListFromCbl;
|
||||
|
||||
// Is there another reading list with the same name?
|
||||
if (await _unitOfWork.ReadingListRepository.ReadingListExists(cblReading.Name))
|
||||
// Is there another reading list with the same name on the user's account?
|
||||
if (await _unitOfWork.ReadingListRepository.ReadingListExistsForUser(cblReading.Name, userId))
|
||||
{
|
||||
importSummary.Success = CblImportResult.Fail;
|
||||
importSummary.Results.Add(new CblBookResult
|
||||
|
@ -600,9 +601,6 @@ public class ReadingListService : IReadingListService
|
|||
var userSeries =
|
||||
(await _unitOfWork.SeriesRepository.GetAllSeriesByNameAsync(uniqueSeries, userId, SeriesIncludes.Chapters)).ToList();
|
||||
|
||||
// How can we match properly with ComicVine library when year is part of the series unless we do this in 2 passes and see which has a better match
|
||||
|
||||
|
||||
if (userSeries.Count == 0)
|
||||
{
|
||||
// Report that no series exist in the reading list
|
||||
|
|
|
@ -21,8 +21,8 @@ namespace API.Services;
|
|||
|
||||
public interface ISettingsService
|
||||
{
|
||||
Task<ActionResult<MetadataSettingsDto>> UpdateMetadataSettings(MetadataSettingsDto dto);
|
||||
Task<ActionResult<ServerSettingDto>> UpdateSettings(ServerSettingDto updateSettingsDto);
|
||||
Task<MetadataSettingsDto> UpdateMetadataSettings(MetadataSettingsDto dto);
|
||||
Task<ServerSettingDto> UpdateSettings(ServerSettingDto updateSettingsDto);
|
||||
}
|
||||
|
||||
|
||||
|
@ -50,7 +50,7 @@ public class SettingsService : ISettingsService
|
|||
/// </summary>
|
||||
/// <param name="dto"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<ActionResult<MetadataSettingsDto>> UpdateMetadataSettings(MetadataSettingsDto dto)
|
||||
public async Task<MetadataSettingsDto> UpdateMetadataSettings(MetadataSettingsDto dto)
|
||||
{
|
||||
var existingMetadataSetting = await _unitOfWork.SettingsRepository.GetMetadataSettings();
|
||||
existingMetadataSetting.Enabled = dto.Enabled;
|
||||
|
@ -108,7 +108,7 @@ public class SettingsService : ISettingsService
|
|||
/// <param name="updateSettingsDto"></param>
|
||||
/// <returns></returns>
|
||||
/// <exception cref="KavitaException"></exception>
|
||||
public async Task<ActionResult<ServerSettingDto>> UpdateSettings(ServerSettingDto updateSettingsDto)
|
||||
public async Task<ServerSettingDto> UpdateSettings(ServerSettingDto updateSettingsDto)
|
||||
{
|
||||
// We do not allow CacheDirectory changes, so we will ignore.
|
||||
var currentSettings = await _unitOfWork.SettingsRepository.GetSettingsAsync();
|
||||
|
|
|
@ -871,7 +871,10 @@ public class ParseScannedFiles
|
|||
var prevIssue = string.Empty;
|
||||
foreach (var chapter in chapters)
|
||||
{
|
||||
if (float.TryParse(chapter.Chapters, NumberStyles.Any, CultureInfo.InvariantCulture, out var parsedChapter))
|
||||
// Use MinNumber in case there is a range, as otherwise sort order will cause it to be processed last
|
||||
var chapterNum =
|
||||
$"{Parser.Parser.MinNumberFromRange(chapter.Chapters).ToString(CultureInfo.InvariantCulture)}";
|
||||
if (float.TryParse(chapterNum, NumberStyles.Any, CultureInfo.InvariantCulture, out var parsedChapter))
|
||||
{
|
||||
// Parsed successfully, use the numeric value
|
||||
counter = parsedChapter;
|
||||
|
|
|
@ -24,7 +24,7 @@ public static partial class Parser
|
|||
|
||||
public static readonly TimeSpan RegexTimeout = TimeSpan.FromMilliseconds(500);
|
||||
|
||||
public const string ImageFileExtensions = @"^(\.png|\.jpeg|\.jpg|\.webp|\.gif|\.avif)"; // Don't forget to update CoverChooser
|
||||
public const string ImageFileExtensions = @"(\.png|\.jpeg|\.jpg|\.webp|\.gif|\.avif)"; // Don't forget to update CoverChooser
|
||||
public const string ArchiveFileExtensions = @"\.cbz|\.zip|\.rar|\.cbr|\.tar.gz|\.7zip|\.7z|\.cb7|\.cbt";
|
||||
public const string EpubFileExtension = @"\.epub";
|
||||
public const string PdfFileExtension = @"\.pdf";
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue