Completed
Push — master ( 187043...48cde4 )
by
unknown
01:30
created

src/Exceptions/InvalidFilterQuery.php (1 issue)

Labels
Severity

Upgrade to new PHP Analysis Engine

These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more

1
<?php
2
3
namespace Spatie\QueryBuilder\Exceptions;
4
5
use Illuminate\Http\Response;
6
use Illuminate\Support\Collection;
7
8
class InvalidFilterQuery extends InvalidQuery
9
{
10
    /** @var \Illuminate\Support\Collection */
11
    public $unknownFilters;
12
13
    /** @var \Illuminate\Support\Collection */
14
    public $allowedFilters;
15
16
    public function __construct(Collection $unknownFilters, Collection $allowedFilters)
17
    {
18
        $this->unknownFilters = $unknownFilters;
19
        $this->allowedFilters = $allowedFilters;
20
21
        $unknownFilters = $this->unknownFilters->implode(', ');
22
        $allowedFilters = $this->allowedFilters->implode(', ');
23
        $message = "Requested filter(s) `{$unknownFilters}` are not allowed. Allowed filter(s) are `{$allowedFilters}`.";
24
25
        parent::__construct(Response::HTTP_BAD_REQUEST, $message);
26
    }
27
28
    public static function filtersNotAllowed(Collection $unknownFilters, Collection $allowedFilters)
29
    {
30
        return new static(...func_get_args());
0 ignored issues
show
The call to InvalidFilterQuery::__construct() misses a required argument $allowedFilters.

This check looks for function calls that miss required arguments.

Loading history...
31
    }
32
}
33