*/
public function books()
{
- return $this->belongsToMany(Book::class, 'bookshelves_books', 'bookshelf_id', 'book_id')->orderBy('order', 'asc');
+ return $this->belongsToMany(Book::class, 'bookshelves_books', 'bookshelf_id', 'book_id')
+ ->withPivot('order')
+ ->orderBy('order', 'asc');
}
/**
{
return "'BookStack\\\\BookShelf' as entity_type, id, id as entity_id, slug, name, {$this->textField} as text,'' as html, '0' as book_id, '0' as priority, '0' as chapter_id, '0' as draft, created_by, updated_by, updated_at, created_at";
}
+
+ /**
+ * Check if this shelf contains the given book.
+ * @param Book $book
+ * @return bool
+ */
+ public function contains(Book $book)
+ {
+ return $this->books()->where('id', '=', $book->id)->count() > 0;
+ }
}