. */ namespace SP\Mvc\Controller; use Klein\Klein; use SP\Core\Acl\Acl; use SP\Core\PhpExtensionChecker; use SP\Core\UI\ThemeInterface; use SP\Http\RequestInterface; use SP\Modules\Web\Controllers\Helpers\LayoutHelper; use SP\Mvc\View\TemplateInterface; use SP\Providers\Auth\Browser\BrowserAuthInterface; /** * Class WebControllerHelper */ final class WebControllerHelper { private ThemeInterface $theme; private Klein $router; private Acl $acl; private RequestInterface $request; private PhpExtensionChecker $extensionChecker; private TemplateInterface $template; private BrowserAuthInterface $browser; private LayoutHelper $layoutHelper; public function __construct( SimpleControllerHelper $simpleControllerHelper, TemplateInterface $template, BrowserAuthInterface $browser, LayoutHelper $layoutHelper ) { $this->theme = $simpleControllerHelper->getTheme(); $this->router = $simpleControllerHelper->getRouter(); $this->acl = $simpleControllerHelper->getAcl(); $this->request = $simpleControllerHelper->getRequest(); $this->extensionChecker = $simpleControllerHelper->getExtensionChecker(); $this->template = $template; $this->browser = $browser; $this->layoutHelper = $layoutHelper; } public function getTheme(): ThemeInterface { return $this->theme; } public function getRouter(): Klein { return $this->router; } public function getAcl(): Acl { return $this->acl; } public function getRequest(): RequestInterface { return $this->request; } public function getExtensionChecker(): PhpExtensionChecker { return $this->extensionChecker; } public function getTemplate(): TemplateInterface { return $this->template; } public function getBrowser(): BrowserAuthInterface { return $this->browser; } public function getLayoutHelper(): LayoutHelper { return $this->layoutHelper; } }