public function testFormManager() { $objFormManager = new class_admin_formgenerator("test", new AdminFormB()); $objFormManager->generateFieldsFromObject(); $this->assertNotNull($objFormManager->getField("fielda1")); $this->assertNotNull($objFormManager->getField("fielda2")); $this->assertNotNull($objFormManager->getField("fieldb1")); $this->assertNotNull($objFormManager->getField("fieldb2")); $arrFields = $objFormManager->getArrFields(); $arrKey = array_keys($arrFields); $this->assertEquals($arrKey[0], "fielda1"); $this->assertEquals($arrKey[1], "fielda2"); $this->assertEquals($arrKey[2], "fieldb1"); $this->assertEquals($arrKey[3], "fieldb2"); $objFormManager->setFieldToPosition("fielda2", 1); $objFormManager->setFieldToPosition("fieldb2", 4); $arrFields = $objFormManager->getArrFields(); $arrKey = array_keys($arrFields); $this->assertEquals($arrKey[0], "fielda2"); $this->assertEquals($arrKey[1], "fielda1"); $this->assertEquals($arrKey[2], "fieldb1"); $this->assertEquals($arrKey[3], "fieldb2"); }
/** * @param class_module_search_search $objSearch * * @return class_admin_formgenerator */ public function getSearchAdminForm($objSearch) { $objForm = new class_admin_formgenerator("search", $objSearch); $objForm->generateFieldsFromObject(); // Load filterable modules $arrFilterModules = $objSearch->getPossibleModulesForFilter(); $objForm->getField("formfiltermodules")->setArrKeyValues($arrFilterModules); $objForm->addField(new class_formentry_checkbox("search", "filter_all"))->setStrLabel($this->getLang("select_all"))->setStrValue($objSearch->getStrInternalFilterModules() == "-1" || $objSearch->getStrInternalFilterModules() == ""); $objForm->setFieldToPosition("search_filter_all", 3); $bitVisible = $objSearch->getStrInternalFilterModules() != "-1" && $objSearch->getStrInternalFilterModules() != "" || $objSearch->getObjChangeEnddate() != null || $objSearch->getObjChangeStartdate() != null; $objForm->setStrHiddenGroupTitle($this->getLang("form_additionalheader")); $objForm->addFieldToHiddenGroup($objForm->getField("formfiltermodules")); $objForm->addFieldToHiddenGroup($objForm->getField("formfilteruser")); $objForm->addFieldToHiddenGroup($objForm->getField("search_filter_all")); $objForm->addFieldToHiddenGroup($objForm->getField("changestartdate")); $objForm->addFieldToHiddenGroup($objForm->getField("changeenddate")); $objForm->setBitHiddenElementsVisible($bitVisible); //add js-code for enabling and disabling multiselect box for modules $strCore = class_resourceloader::getInstance()->getCorePathForModule("module_search"); $strJS = <<<JS KAJONA.admin.loader.loadFile('{$strCore}/module_search/admin/scripts/search.js', function() { KAJONA.admin.search.switchFilterAllModules(); \$('#search_filter_all').click(function() {KAJONA.admin.search.switchFilterAllModules()}); }); JS; $strPlain = "<script type='text/javascript'>" . $strJS . "</script>"; $objForm->addField(new class_formentry_plaintext())->setStrValue($strPlain); return $objForm; }
/** * @param class_module_workflows_handler $objHandler * * @return class_admin_formgenerator */ private function getHandlerForm(class_module_workflows_handler $objHandler) { $objForm = new class_admin_formgenerator("handler", $objHandler); $objForm->generateFieldsFromObject(); $arrNames = $objHandler->getObjInstanceOfHandler()->getConfigValueNames(); $objForm->getField("configval1")->setStrLabel(isset($arrNames[0]) ? $arrNames[0] : $this->getLang("workflow_handler_val1")); $objForm->getField("configval2")->setStrLabel(isset($arrNames[1]) ? $arrNames[1] : $this->getLang("workflow_handler_val2")); $objForm->getField("configval3")->setStrLabel(isset($arrNames[2]) ? $arrNames[2] : $this->getLang("workflow_handler_val3")); return $objForm; }
/** * Hook to update the admin-form when editing / creating a single group * @param class_admin_formgenerator $objForm * * @return mixed */ public function updateAdminForm(class_admin_formgenerator $objForm) { $arrDD = array(); foreach (class_ldap::getAllInstances() as $objOneInstance) { $arrDD[$objOneInstance->getIntCfgNr()] = $objOneInstance->getStrCfgName(); } $objForm->getField("cfg")->setArrKeyValues($arrDD); }
/** * Generates a simple form to edit and create elements' basic data. * * @param class_module_pages_element $objElement * * @return class_admin_formgenerator */ private function getElementForm(class_module_pages_element $objElement) { //Fetch Admin classes $arrClasses = class_resourceloader::getInstance()->getFolderContent("/admin/elements", array(".php")); $arrClassesAdmin = array(); foreach ($arrClasses as $strClass) { $arrClassesAdmin[$strClass] = $strClass; } //Fetch Portal-Classes $arrClassesPortal = array(); $arrClasses = class_resourceloader::getInstance()->getFolderContent("/portal/elements", array(".php")); foreach ($arrClasses as $strClass) { $arrClassesPortal[$strClass] = $strClass; } $objForm = new class_admin_formgenerator("element", $objElement); //redefine for proper lang-rendering $objElement->setArrModuleEntry("modul", "pages"); $objForm->generateFieldsFromObject(); $objForm->getField("cachetime")->setStrHint($this->getLang("element_cachetime_hint")); $objForm->getField("classadmin")->setArrKeyValues($arrClassesAdmin); $objForm->getField("classportal")->setArrKeyValues($arrClassesPortal); //check if the config-vals may be overriden /** @var $objAdminInstance class_element_admin */ if ($objElement->getSystemid() != "") { $objAdminInstance = $objElement->getAdminElementInstance(); if ($objAdminInstance->getConfigVal1Name() != "") { $objForm->addDynamicField("strConfigval1")->setStrLabel($objAdminInstance->getConfigVal1Name()); } if ($objAdminInstance->getConfigVal2Name() != "") { $objForm->addDynamicField("strConfigval2")->setStrLabel($objAdminInstance->getConfigVal2Name()); } if ($objAdminInstance->getConfigVal3Name() != "") { $objForm->addDynamicField("strConfigval3")->setStrLabel($objAdminInstance->getConfigVal3Name()); } } return $objForm; }
/** * Hook to update the admin-form when editing / creating a single user * @param class_admin_formgenerator $objForm * * @return mixed */ public function updateAdminForm(class_admin_formgenerator $objForm) { $objForm->getField("user_username")->setBitReadonly(true); }