Optimized loading of page/chapter URLs to be a little more efficient

- Loaded book_slug as part of chapter/page queries instead of books
 being loaded in afterwards.
- Removed unused page method.
- Updated some page queries to load specific attributes.
This commit is contained in:
Dan Brown
2021-08-21 19:58:19 +01:00
parent 8db047de70
commit 1a6293ce24
5 changed files with 26 additions and 21 deletions

View File

@ -93,9 +93,11 @@ class BookContents
/**
* Get the visible pages within this book.
*/
protected function getPages(bool $showDrafts = false): Collection
protected function getPages(bool $showDrafts = false, bool $getPageContent = false): Collection
{
$query = Page::visible()->where('book_id', '=', $this->book->id);
$query = Page::visible()
->select($getPageContent ? Page::$contentAttributes : Page::$listAttributes)
->where('book_id', '=', $this->book->id);
if (!$showDrafts) {
$query->where('draft', '=', false);