- 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";
+ return $this->books()->where('id', '=', $book->id)->count() > 0;
+ }
+
+ /**
+ * Add a book to the end of this shelf.
+ * @param Book $book
+ */
+ public function appendBook(Book $book)
+ {
+ if ($this->contains($book)) {
+ return;
+ }
+
+ $maxOrder = $this->books()->max('order');
+ $this->books()->attach($book->id, ['order' => $maxOrder + 1]);