X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/85154fff693c80374bc048ca9497df663bd5e32d..refs/pull/3630/head:/app/Http/Controllers/Api/ApiController.php diff --git a/app/Http/Controllers/Api/ApiController.php b/app/Http/Controllers/Api/ApiController.php index 3f049a08c..9652654be 100644 --- a/app/Http/Controllers/Api/ApiController.php +++ b/app/Http/Controllers/Api/ApiController.php @@ -15,10 +15,14 @@ abstract class ApiController extends Controller * Provide a paginated listing JSON response in a standard format * taking into account any pagination parameters passed by the user. */ - protected function apiListingResponse(Builder $query, array $fields): JsonResponse + protected function apiListingResponse(Builder $query, array $fields, array $modifiers = []): JsonResponse { $listing = new ListingResponseBuilder($query, request(), $fields); + foreach ($modifiers as $modifier) { + $listing->modifyResults($modifier); + } + return $listing->toResponse(); } @@ -26,7 +30,7 @@ abstract class ApiController extends Controller * Get the validation rules for this controller. * Defaults to a $rules property but can be a rules() method. */ - public function getValdationRules(): array + public function getValidationRules(): array { if (method_exists($this, 'rules')) { return $this->rules();