diff --git a/src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php b/src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php index f629459b4..813ab1526 100644 --- a/src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php +++ b/src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php @@ -18,7 +18,14 @@ final readonly class CenterResolverManager implements CenterResolverManagerInter /** * @param \Chill\MainBundle\Security\Resolver\CenterResolverInterface[] $resolvers */ - public function __construct(private iterable $resolvers = []) {} + public function __construct(private iterable $resolvers = []) + { + foreach ($resolvers as $resolver) { + if ($resolver instanceof ManagerAwareCenterResolverInterface) { + $resolver->setResolverManager($this); + } + } + } public function resolveCenters($entity, ?array $options = []): array { diff --git a/src/Bundle/ChillMainBundle/Security/Resolver/ManagerAwareCenterResolverInterface.php b/src/Bundle/ChillMainBundle/Security/Resolver/ManagerAwareCenterResolverInterface.php new file mode 100644 index 000000000..eae7ae964 --- /dev/null +++ b/src/Bundle/ChillMainBundle/Security/Resolver/ManagerAwareCenterResolverInterface.php @@ -0,0 +1,22 @@ +centerResolverManager = $manager; + } +}