public function run() { $page_id = $this->page_id; $controller = Yii::app()->getController(); $model = new ModuleFields(); if (!is_null($page_id) && Pages::model()->existsPage($page_id)) { $role_id = Users::model()->findByPk(Yii::app()->user->id)->role_id; if ($role_id < 2) { // доступно для пользователей первой роли (например, «Реактиву») $model = $this->create_item($page_id, $model); $this->update_order($page_id); } $this->update_values($page_id); $data_type_drop_down_list = DataType::model()->getDropDownList(); unset($data_type_drop_down_list[5]); unset($data_type_drop_down_list[6]); $this->render('module_fields', array('model' => $model, 'data_type_drop_down_list' => $data_type_drop_down_list, 'page_id' => $page_id)); } else { $controller->redirect(Yii::app()->request->scriptUrl); } }
public function actionSettings($page_id = null, $id = null) { $role_id = Users::model()->findByPk(Yii::app()->user->id)->role_id; if ($role_id < 2 && !is_null($page_id) && Pages::model()->existsPage($page_id)) { $mpage_id = ModulesInPages::model()->getLink((int) $page_id, $this->module->id); if ($mpage_id == 5) { $mpage_id = 4; } if ($mpage_id == 54) { $mpage_id = 4; } if ($mpage_id == 56) { $mpage_id = 4; } if ($mpage_id == 58) { $mpage_id = 4; } if (!is_null($id) && ModuleList3Params::model()->existsItem($mpage_id, $id)) { $model = ModuleList3Params::model()->findByPk($id); if (isset($_POST['ModuleList3Params'])) { $model->attributes = $_POST['ModuleList3Params']; if ($model->save()) { Yii::app()->user->setFlash('message', '<p style="color:green;">Сохранено</p>'); $this->redirect(Yii::app()->baseUrl . '?r=' . $this->module->id . '/params/settings&page_id=' . $page_id . '&id=' . $id); } else { Yii::app()->user->setFlash('message', '<p style="color:red;">Ошибка</p>'); } } $model = ModuleList3Params::model()->getItem($id); $data_type_drop_down_list = DataType::model()->getDropDownList(); $this->render('settings', array('model' => $model, 'data_type_drop_down_list' => $data_type_drop_down_list, 'page_id' => $page_id, 'id' => $id)); } else { $this->redirect(Yii::app()->baseUrl . '?r=pages/update&id=' . $page_id . '&/#!/tab_' . $this->module->id); } } else { $this->redirect(Yii::app()->request->scriptUrl); } }
public function actionSettings($page_id = null, $id = null) { $role_id = Users::model()->findByPk(Yii::app()->user->id)->role_id; if ($role_id < 2 && !is_null($page_id) && Pages::model()->existsPage($page_id)) { $mpage_id = ModulesInPages::model()->getLink((int) $page_id, $this->module->id); if (!is_null($id) && ModuleList4Params::model()->existsItem($mpage_id, $id)) { $model = ModuleList4Params::model()->findByPk($id); if (isset($_POST['ModuleList4Params'])) { $model->attributes = $_POST['ModuleList4Params']; $model->settings = array(); foreach ($model->defaultSettings['list4'] as $code => $setting) { switch ($setting['type']) { case 'checkbox': $sValue = isset($_POST['ModuleList4Params']['settings'][$code]) ? true : false; $model->settings = array_merge($model->settings, array($code => $sValue)); break; case 'string': if (isset($_POST['ModuleList4Params']['settings'][$code])) { $sValue = trim($_POST['ModuleList4Params']['settings'][$code]); } else { $sValue = $setting['value']; } $model->settings = array_merge($model->settings, array($code => $sValue)); break; default: break; } } if (!is_null($model->settings)) { $model->settings = serialize($model->settings); } if ($model->save()) { Yii::app()->user->setFlash('message', '<p style="color:green;">Сохранено</p>'); $this->redirect(Yii::app()->baseUrl . '?r=' . $this->module->id . '/params/settings&page_id=' . $page_id . '&id=' . $id); } else { Yii::app()->user->setFlash('message', '<p style="color:red;">Ошибка</p>'); } } $model = ModuleList4Params::model()->getItem($id); $data_type_drop_down_list = DataType::model()->getDropDownList(); $module_settings = ModuleList4Settings::model()->getItem($mpage_id); $this->pageTitle = $module_settings->title . ' — Настройки параметра «' . $model->title . '»'; $this->render('settings', array('model' => $model, 'data_type_drop_down_list' => $data_type_drop_down_list, 'page_id' => $page_id, 'id' => $id)); } else { $this->redirect(Yii::app()->baseUrl . '?r=pages/update&id=' . $page_id . '&/#!/tab_' . $this->module->id); } } else { $this->redirect(Yii::app()->request->scriptUrl); } }