Misc Bugfixes (#1378)

* Fixed an issue where sometimes when loading the next page, the pagination area wouldn't be properly setup due to a missed rendering cycle

* Refactored BookController to thin it out and refactor some of the functions to apply IOC. Added some split query statements on a few queries.

* Added Split Query to many queries

* Added a visual indicator for loading state of PDF. Will spruce up css later.

* Added back in logic

* Fixed flash of white when refreshing browser

* Hooked in a loading progress bar for the pdf reader

* Close the pdf reader when pressing ESC
This commit is contained in:
Joseph Milazzo 2022-07-17 10:19:36 -04:00 committed by GitHub
parent 3a10b54422
commit c650436f57
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 315 additions and 389 deletions

View file

@ -169,6 +169,7 @@ public class LibraryRepository : ILibraryRepository
.Include(f => f.Folders)
.OrderBy(l => l.Name)
.ProjectTo<LibraryDto>(_mapper.ConfigurationProvider)
.AsSplitQuery()
.AsNoTracking()
.ToListAsync();
}
@ -200,7 +201,7 @@ public class LibraryRepository : ILibraryRepository
query = query.Include(l => l.AppUsers);
}
return query;
return query.AsSplitQuery();
}
@ -259,6 +260,7 @@ public class LibraryRepository : ILibraryRepository
.Where(library => library.AppUsers.Contains(user))
.Include(l => l.Folders)
.AsNoTracking()
.AsSplitQuery()
.ProjectTo<LibraryDto>(_mapper.ConfigurationProvider)
.ToListAsync();
}
@ -283,6 +285,7 @@ public class LibraryRepository : ILibraryRepository
var ret = await _context.Series
.Where(s => libraryIds.Contains(s.LibraryId))
.Select(s => s.Metadata.Language)
.AsSplitQuery()
.AsNoTracking()
.Distinct()
.ToListAsync();
@ -302,6 +305,7 @@ public class LibraryRepository : ILibraryRepository
{
return _context.Series
.Where(s => libraryIds.Contains(s.LibraryId))
.AsSplitQuery()
.Select(s => s.Metadata.PublicationStatus)
.Distinct()
.AsEnumerable()
@ -313,5 +317,4 @@ public class LibraryRepository : ILibraryRepository
.OrderBy(s => s.Title);
}
}