skeeks\cms\controllers\AdminComponentSettingsController::beforeAction PHP Method

beforeAction() public method

public beforeAction ( $action )
    public function beforeAction($action)
    {
        if (parent::beforeAction($action)) {
            $componentClassName = \Yii::$app->request->get('componentClassName');
            $namespace = \Yii::$app->request->get('componentNamespace');
            if ($namespace) {
                $component = new $componentClassName(['namespace' => $namespace]);
            } else {
                $component = new $componentClassName();
            }
            if (!$component || !$component instanceof Component) {
                throw new UserException("Указан некорректный компонент");
            }
            $this->_component = $component;
            $this->_callableData = $this->_getCallableData($component);
            //TODO: Добавить возможность настройки
            \Yii::$app->view->theme = new Theme(['pathMap' => ['@app/views' => ['@skeeks/cms/modules/admin/views']]]);
            \Yii::$app->language = \Yii::$app->admin->languageCode;
            return true;
        } else {
            return false;
        }
    }