X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/07b889547d28e68e5fc8f923c166bd607da17ad7..refs/pull/2393/head:/app/Entities/EntityProvider.php diff --git a/app/Entities/EntityProvider.php b/app/Entities/EntityProvider.php index d0d4a7ad6..ef1935a0f 100644 --- a/app/Entities/EntityProvider.php +++ b/app/Entities/EntityProvider.php @@ -1,13 +1,18 @@ bookshelf = $bookshelf; - $this->book = $book; - $this->chapter = $chapter; - $this->page = $page; - $this->pageRevision = $pageRevision; + + public function __construct() + { + $this->bookshelf = new Bookshelf(); + $this->book = new Book(); + $this->chapter = new Chapter(); + $this->page = new Page(); + $this->pageRevision = new PageRevision(); } /** * Fetch all core entity types as an associated array * with their basic names as the keys. - * @return Entity[] + * @return [string => Entity] */ - public function all() + public function all(): array { return [ 'bookshelf' => $this->bookshelf, @@ -76,10 +69,8 @@ class EntityProvider /** * Get an entity instance by it's basic name. - * @param string $type - * @return Entity */ - public function get(string $type) + public function get(string $type): Entity { $type = strtolower($type); return $this->all()[$type]; @@ -87,15 +78,9 @@ class EntityProvider /** * Get the morph classes, as an array, for a single or multiple types. - * @param string|array $types - * @return array */ - public function getMorphClasses($types) + public function getMorphClasses(array $types): array { - if (is_string($types)) { - $types = [$types]; - } - $morphClasses = []; foreach ($types as $type) { $model = $this->get($type);