public function actionIndex()
{
$rr = new RequestResponse();
$classComponent = \Yii::$app->request->get('component');
$classComponentSettings = (string) \Yii::$app->request->get('settings');
if ($classComponentSettings) {
$classComponentSettings = unserialize(StringHelper::base64DecodeUrl($classComponentSettings));
}
/**
* @var $component \skeeks\cms\relatedProperties\PropertyType;
*/
$component = new $classComponent();
try {
$component->attributes = $classComponentSettings;
} catch (\Exception $e) {
}
if (\Yii::$app->request->isAjax && !\Yii::$app->request->isPjax) {
return $rr->ajaxValidateForm($component);
}
$forSave = "";
if ($rr->isRequestPjaxPost()) {
if ($component->load(\Yii::$app->request->post())) {
\Yii::$app->session->setFlash('success', 'Сохранено');
$forSave = StringHelper::base64EncodeUrl(serialize($component->attributes));
} else {
\Yii::$app->session->setFlash('error', 'Ошибка');
}
}
return $this->render($this->action->id, ["component" => $component, "forSave" => $forSave]);
}