Bristol SU Support Package
src
Filters
FilterTester.php
Go to the documentation of this file.
1
<?php
2
3
4
namespace
BristolSU\Support\Filters
;
5
6
7
use
BristolSU\ControlDB\Contracts\Models\Group
;
8
use
BristolSU\ControlDB\Contracts\Models\Role
;
9
use
BristolSU\ControlDB\Contracts\Models\User
;
10
use
BristolSU\Support\Filters\Contracts\FilterInstance
;
11
use
BristolSU\Support\Filters\Contracts\FilterRepository
;
12
use
BristolSU\Support\Filters\Contracts\FilterTester
as
FilterTesterContract
;
13
use
Exception
;
14
18
class
FilterTester
implements
FilterTesterContract
19
{
25
private
$repository
;
26
30
public
function
__construct
(
FilterRepository
$repository
)
31
{
32
$this->repository =
$repository
;
33
}
34
46
public
function
evaluate
(
FilterInstance
$filterInstance, $model): bool
47
{
48
$filter = $this->repository->getByAlias($filterInstance->
alias
());
49
$filter->setModel($model);
50
return
$filter->evaluate($filterInstance->
settings
());
51
}
52
}
FilterInstance
BristolSU\Support\Filters
Definition:
CachedFilterTesterDecorator.php:3
BristolSU\Support\Filters\FilterTester\evaluate
evaluate(FilterInstance $filterInstance, $model)
Definition:
FilterTester.php:46
User
BristolSU\Support\Filters\Contracts\FilterInstance\alias
alias()
BristolSU\Support\Filters\Contracts\FilterInstance
Definition:
FilterInstance.php:8
BristolSU\Support\Filters\FilterTester\__construct
__construct(FilterRepository $repository)
Definition:
FilterTester.php:30
BristolSU\Support\Filters\Contracts\FilterInstance\settings
settings()
Group
Role
BristolSU\Support\Filters\FilterTester
Definition:
FilterTester.php:18
BristolSU\Support\Filters\Contracts\FilterRepository
Definition:
FilterRepository.php:10
FilterRepository
BristolSU\Support\Filters\FilterTester\$repository
$repository
Definition:
FilterTester.php:25
FilterTester
Exception
Generated by
1.8.13