X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/f28ed0ef0b219eece535a4d2a1261832bfc10f14..refs/pull/4467/head:/app/Entities/Models/Bookshelf.php diff --git a/app/Entities/Models/Bookshelf.php b/app/Entities/Models/Bookshelf.php index cdc6648f9..ad52d9d37 100644 --- a/app/Entities/Models/Bookshelf.php +++ b/app/Entities/Models/Bookshelf.php @@ -17,7 +17,7 @@ class Bookshelf extends Entity implements HasCoverImage protected $fillable = ['name', 'description', 'image_id']; - protected $hidden = ['restricted', 'image_id', 'deleted_at']; + protected $hidden = ['image_id', 'deleted_at']; /** * Get the books in this shelf. @@ -109,4 +109,13 @@ class Bookshelf extends Entity implements HasCoverImage $maxOrder = $this->books()->max('order'); $this->books()->attach($book->id, ['order' => $maxOrder + 1]); } + + /** + * Get a visible shelf by its slug. + * @throws \Illuminate\Database\Eloquent\ModelNotFoundException + */ + public static function getBySlug(string $slug): self + { + return static::visible()->where('slug', '=', $slug)->firstOrFail(); + } }