No more JWTs for Scripts + Polish (#4274)

Co-authored-by: Amelia <77553571+Fesaa@users.noreply.github.com>
This commit is contained in:
Joe Milazzo
2025-12-13 06:55:02 -07:00
committed by GitHub
parent b67680c639
commit 8043650aa5
131 changed files with 7804 additions and 1849 deletions
@@ -36,6 +36,8 @@ public interface IAppUserProgressRepository
Task<int> GetHighestFullyReadChapterForSeries(int seriesId, int userId);
Task<float> GetHighestFullyReadVolumeForSeries(int seriesId, int userId);
Task<DateTime?> GetLatestProgressForSeries(int seriesId, int userId);
Task<DateTime?> GetLatestProgressForVolume(int volumeId, int userId);
Task<DateTime?> GetLatestProgressForChapter(int chapterId, int userId);
Task<DateTime?> GetFirstProgressForSeries(int seriesId, int userId);
Task UpdateAllProgressThatAreMoreThanChapterPages();
Task<IList<FullProgressDto>> GetUserProgressForChapter(int chapterId, int userId = 0);
@@ -203,6 +205,22 @@ public class AppUserProgressRepository : IAppUserProgressRepository
return list.Count == 0 ? null : list.DefaultIfEmpty().Max();
}
public async Task<DateTime?> GetLatestProgressForVolume(int volumeId, int userId)
{
var list = await _context.AppUserProgresses.Where(p => p.AppUserId == userId && p.VolumeId == volumeId)
.Select(p => p.LastModifiedUtc)
.ToListAsync();
return list.Count == 0 ? null : list.DefaultIfEmpty().Max();
}
public async Task<DateTime?> GetLatestProgressForChapter(int chapterId, int userId)
{
return await _context.AppUserProgresses
.Where(p => p.AppUserId == userId && p.ChapterId == chapterId)
.Select(p => p.LastModifiedUtc)
.FirstOrDefaultAsync();
}
public async Task<DateTime?> GetFirstProgressForSeries(int seriesId, int userId)
{
var list = await _context.AppUserProgresses.Where(p => p.AppUserId == userId && p.SeriesId == seriesId)