Some code from before I left for holiday. Need to review it later.

This commit is contained in:
Joseph Milazzo 2025-06-01 07:02:27 -05:00
parent 28702e2d10
commit 3933d5cab2
3 changed files with 17 additions and 8 deletions

View file

@ -108,14 +108,17 @@ public class ExternalSeriesMetadataRepository : IExternalSeriesMetadataRepositor
public async Task<bool> NeedsDataRefresh(int seriesId) public async Task<bool> NeedsDataRefresh(int seriesId)
{ {
// TODO: Add unit test
var row = await _context.ExternalSeriesMetadata var row = await _context.ExternalSeriesMetadata
.Where(s => s.SeriesId == seriesId) .Where(s => s.SeriesId == seriesId)
.FirstOrDefaultAsync(); .FirstOrDefaultAsync();
return row == null || row.ValidUntilUtc <= DateTime.UtcNow; return row == null || row.ValidUntilUtc <= DateTime.UtcNow;
} }
public async Task<SeriesDetailPlusDto?> GetSeriesDetailPlusDto(int seriesId) public async Task<SeriesDetailPlusDto?> GetSeriesDetailPlusDto(int seriesId)
{ {
// TODO: Add unit test
var seriesDetailDto = await _context.ExternalSeriesMetadata var seriesDetailDto = await _context.ExternalSeriesMetadata
.Where(m => m.SeriesId == seriesId) .Where(m => m.SeriesId == seriesId)
.Include(m => m.ExternalRatings) .Include(m => m.ExternalRatings)
@ -144,7 +147,7 @@ public class ExternalSeriesMetadataRepository : IExternalSeriesMetadataRepositor
.ProjectTo<SeriesDto>(_mapper.ConfigurationProvider) .ProjectTo<SeriesDto>(_mapper.ConfigurationProvider)
.ToListAsync(); .ToListAsync();
IEnumerable<UserReviewDto> reviews = new List<UserReviewDto>(); IEnumerable<UserReviewDto> reviews = [];
if (seriesDetailDto.ExternalReviews != null && seriesDetailDto.ExternalReviews.Any()) if (seriesDetailDto.ExternalReviews != null && seriesDetailDto.ExternalReviews.Any())
{ {
reviews = seriesDetailDto.ExternalReviews reviews = seriesDetailDto.ExternalReviews

View file

@ -130,22 +130,23 @@ public class LicenseService(
if (cacheValue.HasValue) return cacheValue.Value; if (cacheValue.HasValue) return cacheValue.Value;
} }
var result = false;
try try
{ {
var serverSetting = await unitOfWork.SettingsRepository.GetSettingAsync(ServerSettingKey.LicenseKey); var serverSetting = await unitOfWork.SettingsRepository.GetSettingAsync(ServerSettingKey.LicenseKey);
var result = await IsLicenseValid(serverSetting.Value); result = await IsLicenseValid(serverSetting.Value);
await provider.FlushAsync();
await provider.SetAsync(CacheKey, result, _licenseCacheTimeout);
return result;
} }
catch (Exception ex) catch (Exception ex)
{ {
logger.LogError(ex, "There was an issue connecting to Kavita+"); logger.LogError(ex, "There was an issue connecting to Kavita+");
}
finally
{
await provider.FlushAsync(); await provider.FlushAsync();
await provider.SetAsync(CacheKey, false, _licenseCacheTimeout); await provider.SetAsync(CacheKey, result, _licenseCacheTimeout);
} }
return false; return result;
} }
/// <summary> /// <summary>

View file

@ -585,8 +585,13 @@ public class CoverDbService : ICoverDbService
var choseNewImage = string.Equals(betterImage, tempFullPath, StringComparison.OrdinalIgnoreCase); var choseNewImage = string.Equals(betterImage, tempFullPath, StringComparison.OrdinalIgnoreCase);
if (choseNewImage) if (choseNewImage)
{
// Don't delete the Series cover unless it is an override, otherwise the first chapter will be null
if (existingPath.Contains(ImageService.GetSeriesFormat(series.Id)))
{ {
_directoryService.DeleteFiles([existingPath]); _directoryService.DeleteFiles([existingPath]);
}
_directoryService.CopyFile(tempFullPath, finalFullPath); _directoryService.CopyFile(tempFullPath, finalFullPath);
series.CoverImage = finalFileName; series.CoverImage = finalFileName;
} }