/** * create instance */ public function __construct() { $instanceConfig = InstanceConfig::instance(); $this->currentUrl = $instanceConfig->getUrl(); $this->boardId = $instanceConfig->getInstanceId(); if ($this->boardId === null) { throw new NotFoundInstanceIdException(); } $this->handler = app('xe.board.handler'); $this->urlHandler = app('xe.board.url'); $this->configHandler = app('xe.board.config'); // set config $this->config = $this->configHandler->get($this->boardId); $this->handler->setConfig($this->config); $this->urlHandler->setConfig($this->config); // check is manager $this->permissionHandler = app('xe.board.permission'); if (Auth::guest() === false && $this->permissionHandler->get($this->boardId)->ables(PermissionHandler::ACTION_MANAGE) === true) { $this->isManager = true; } // set skin /** @var \Xpressengine\Presenter\Presenter $presenter */ $presenter = app('xe.presenter'); $presenter->setSkin(Board::getId()); //$presenter->htmlRenderPopup(); $presenter->share('config', $this->config); $presenter->share('currentUrl', $this->currentUrl); $presenter->share('boardId', $this->boardId); $presenter->share('handler', $this->handler); $presenter->share('permissionHandler', $this->permissionHandler); $presenter->share('configHandler', $this->configHandler); $presenter->share('urlHandler', $this->urlHandler); $presenter->share('isManager', $this->isManager); }
/** * UserController constructor. * * @param Handler $handler * @param ConfigHandler $configHandler * @param UrlHandler $urlHandler * @param BoardPermissionHandler $boardPermission */ public function __construct(Handler $handler, ConfigHandler $configHandler, UrlHandler $urlHandler, BoardPermissionHandler $boardPermission) { $instanceConfig = InstanceConfig::instance(); $this->instanceId = $instanceConfig->getInstanceId(); $this->handler = $handler; $this->configHandler = $configHandler; $this->urlHandler = $urlHandler; $this->config = $configHandler->get($this->instanceId); if ($this->config !== null) { $urlHandler->setConfig($this->config); $this->isManager = false; if (Gate::allows(BoardPermissionHandler::ACTION_MANAGE, new Instance($boardPermission->name($this->instanceId)))) { $this->isManager = true; } } // set Skin XePresenter::setSkinTargetId(BoardModule::getId()); XePresenter::share('handler', $handler); XePresenter::share('configHandler', $configHandler); XePresenter::share('urlHandler', $urlHandler); XePresenter::share('isManager', $this->isManager); XePresenter::share('instanceId', $this->instanceId); XePresenter::share('config', $this->config); }