示例#1
0
 protected function createRightGroupFromData(\stdClass $rightGroupData)
 {
     $rightGroupObj = new RightGroup();
     $rightGroupObj->setID($rightGroupData->ID);
     $rightGroupObj->setGroupKey($rightGroupData->groupkey);
     $rightGroupObj->setGroupName($rightGroupData->groupname);
     $rightGroupObj->setRoot((bool) $rightGroupData->root);
     $rightGroupObj->setRights($rightGroupData->rights);
     return $rightGroupObj;
 }
 /**
  * @param RightGroup $rightGroup
  */
 protected function prepareEditRightGroupForm(RightGroup $rightGroup)
 {
     if ($this->form instanceof CmsForm) {
         return;
     }
     $lang = $this->cmsController->getLocaleHandler()->getLanguage();
     $checkOptionsRights = array();
     $options = array();
     $allModules = $this->moduleModel->getAllModules();
     foreach ($allModules as $mod) {
         if (isset($mod->manifest_content->rights) === false || count((array) $mod->manifest_content->rights) === 0) {
             continue;
         }
         $optionsTemp = array();
         foreach ($mod->manifest_content->rights as $key => $label) {
             $checkOptionsRights[$key] = $key;
             $optionsTemp[$key] = isset($label->{$lang}) ? $label->{$lang} : $label->en;
         }
         $options[isset($mod->manifest_content->name->{$lang}) ? $mod->manifest_content->name->{$lang} : $mod->manifest_content->name->en] = $optionsTemp;
     }
     $this->form = new CmsForm();
     $this->form->setInputData(array_merge($_POST, $_GET));
     $fldName = new InputField('name', 'Name');
     $fldName->setValue($rightGroup->getGroupName());
     $fldName->addRule(new RequiredRule($this->translator->_d('backend', 'Please insert a group name')));
     $fldKey = new InputField('key', 'Key');
     $fldKey->setValue($rightGroup->getGroupKey());
     $fldKey->addRule(new RequiredRule($this->translator->_d('backend', 'Please insert a group key')));
     $fldRoot = new OptionsField('root', 'Root', array(1 => $this->translator->_d('backend', 'This group has root rights')));
     $fldRoot->setValue(array((int) $rightGroup->isRoot()));
     $fldRoot->setOptionsFieldRenderer(new CheckboxOptionsFieldRenderer());
     $fldRights = new OptionsField('rights', 'Rights', $checkOptionsRights);
     $fldRights->setOptionsFieldRenderer(new RightsOptionsFieldRenderer($options));
     $fldRights->setValue($rightGroup->getRights());
     $this->form->addFields(array($fldName, $fldKey, $fldRoot, $fldRights));
 }