function EditGroupAction($rid = null) { $this->BaseAdminData(); $request = Project::getRequest(); $info = array(); if ((int) $rid > 0) { $controller_id = $rid; } else { $controller_id = (int) $request->id; } $controller_model = new ControllerModel(); $controller_model->load($controller_id); $param_group_model = new ParamGroupModel(); if ($controller_id > 0) { $param_group_model->loadByLabel($controller_model->name); if ($param_group_model->id > 0) { $param_group_id = $param_group_model->id; } else { // Group is not exists yet, so create it $param_group_model->label = $controller_model->name; $param_group_id = $param_group_model->save(); } } else { $param_group_id = 0; } $info['controller_id'] = $controller_id; $info['param_group_id'] = $param_group_id; $info['php_types'] = array('string' => 'строка', 'integer' => 'целое', 'float' => 'с плавающей точкой'); $param_model = new ParamModel(); $list = $param_model->getByGroupId($param_group_id); array_push($list, array('id' => 0, 'name' => '', 'value' => '')); $info['param_list'] = $list; $info['save_controller'] = null; $info['save_action'] = 'SaveParams'; $info['save_controller'] = null; $info['delete_controller'] = null; $info['delete_action'] = 'DeleteParam'; $this->_view->ParamList($info); $this->_view->parse(); }