X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/79f6dc00a366fbb318ac70db7ec1128615482655..refs/pull/2166/head:/app/Http/Controllers/Images/ImageController.php diff --git a/app/Http/Controllers/Images/ImageController.php b/app/Http/Controllers/Images/ImageController.php index a76fb5e53..9c67704dd 100644 --- a/app/Http/Controllers/Images/ImageController.php +++ b/app/Http/Controllers/Images/ImageController.php @@ -1,6 +1,6 @@ validate($request, [ 'name' => 'required|min:2|string' @@ -69,16 +69,21 @@ class ImageController extends Controller /** * Show the usage of an image on pages. - * @param \BookStack\Entities\Repos\EntityRepo $entityRepo - * @param $id - * @return \Illuminate\Http\JsonResponse */ - public function usage(EntityRepo $entityRepo, $id) + public function usage(int $id) { $image = $this->imageRepo->getById($id); $this->checkImagePermission($image); - $pageSearch = $entityRepo->searchForImage($image->url); - return response()->json($pageSearch); + + $pages = Page::visible()->where('html', 'like', '%' . $image->url . '%')->get(['id', 'name', 'slug', 'book_id']); + foreach ($pages as $page) { + $page->url = $page->getUrl(); + $page->html = ''; + $page->text = ''; + } + $result = count($pages) > 0 ? $pages : false; + + return response()->json($result); } /** @@ -103,7 +108,7 @@ class ImageController extends Controller */ protected function checkImagePermission(Image $image) { - if ($image->type !== 'drawio' || $image->type !== 'gallery') { + if ($image->type !== 'drawio' && $image->type !== 'gallery') { $this->showPermissionError(); }