]> BookStack Code Mirror - bookstack/blobdiff - app/References/ModelResolvers/ChapterLinkModelResolver.php
Layout: Converted tri-layout component to ts
[bookstack] / app / References / ModelResolvers / ChapterLinkModelResolver.php
index e15dba2588f39206fef88a4d970f52918b2f0990..318b5ed35f41c014a85dae3bd49a9ed528db65a7 100644 (file)
@@ -2,11 +2,17 @@
 
 namespace BookStack\References\ModelResolvers;
 
+use BookStack\App\Model;
 use BookStack\Entities\Models\Chapter;
-use BookStack\Model;
+use BookStack\Entities\Queries\ChapterQueries;
 
 class ChapterLinkModelResolver implements CrossLinkModelResolver
 {
+    public function __construct(
+        protected ChapterQueries $queries
+    ) {
+    }
+
     public function resolve(string $link): ?Model
     {
         $pattern = '/^' . preg_quote(url('/books'), '/') . '\/([\w-]+)' . '\/chapter\/' . '([\w-]+)' . '([#?\/]|$)/';
@@ -20,8 +26,8 @@ class ChapterLinkModelResolver implements CrossLinkModelResolver
         $chapterSlug = $matches[2];
 
         /** @var ?Chapter $model */
-        $model = Chapter::query()->whereSlugs($bookSlug, $chapterSlug)->first();
+        $model = $this->queries->usingSlugs($bookSlug, $chapterSlug)->first(['id']);
 
         return $model;
     }
-}
\ No newline at end of file
+}