/**
  * @return class_admin_formgenerator
  */
 private function getPackAdminForm()
 {
     $objFormgenerator = new class_admin_formgenerator("pack", new class_module_system_common());
     $objFormgenerator->addField(new class_formentry_text("pack", "name"))->setStrLabel($this->getLang("pack_name"))->setBitMandatory(true)->setStrValue($this->getParam("pack_name"));
     $objFormgenerator->addField(new class_formentry_headline())->setStrValue($this->getLang("pack_copy_include"));
     $arrModules = class_resourceloader::getInstance()->getArrModules();
     foreach ($arrModules as $strOneModule) {
         //validate if there's a template-folder existing
         if (is_dir(class_resourceloader::getInstance()->getCorePathForModule($strOneModule, true) . "/" . $strOneModule . "/templates")) {
             $objFormgenerator->addField(new class_formentry_checkbox("pack", "modules[" . $strOneModule . "]"))->setStrLabel($strOneModule)->setStrValue($strOneModule == "module_pages");
         }
     }
     return $objFormgenerator;
 }
 private function getNaviAdminForm(class_module_navigation_tree $objTree)
 {
     $strFolderBrowser = class_link::getLinkAdminDialog("pages", "pagesFolderBrowser", "&form_element=navi_folder_i&folder=1", $this->getLang("commons_open_browser"), $this->getLang("commons_open_browser"), "icon_externalBrowser", $this->getLang("commons_open_browser"));
     $objForm = new class_admin_formgenerator("navi", $objTree);
     $objFolder = new class_module_pages_folder($objTree->getStrFolderId());
     $objForm->addDynamicField("strName");
     $objForm->addField(new class_formentry_text("navi", "folder_i", null))->setStrValue($objFolder->getStrName())->setBitReadonly(true)->setStrOpener($strFolderBrowser)->setStrLabel($this->getLang("navigation_folder_i"));
     $objForm->addField(new class_formentry_hidden("navi", "folder_i_id"))->setStrValue($objFolder->getSystemid());
     return $objForm;
 }
    /**
     * @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_user_group $objGroup
  *
  * @return class_admin_formgenerator
  */
 private function getGroupMemberForm(class_module_user_group $objGroup)
 {
     $objForm = new class_admin_formgenerator("addUserToGroup", $objGroup);
     $objForm->addField(new class_formentry_user("addUserToGroup", "user", null))->setStrValue($this->getParam("addusertogroup_user_id"))->setBitMandatory(true)->setStrLabel($this->getLang("user_username"));
     return $objForm;
 }
 /**
  * Creates a form to send mails to specific users.
  *
  * @return class_admin_formgenerator
  */
 private function getMailForm()
 {
     $objFormgenerator = new class_admin_formgenerator("mail", new class_module_system_common());
     $objFormgenerator->addField(new class_formentry_text("mail", "recipient"))->setStrLabel($this->getLang("mail_recipient"))->setBitMandatory(true)->setObjValidator(new class_email_validator());
     $objFormgenerator->addField(new class_formentry_user("mail", "cc"))->setStrLabel($this->getLang("mail_cc"));
     $objFormgenerator->addField(new class_formentry_text("mail", "subject"))->setStrLabel($this->getLang("mail_subject"))->setBitMandatory(true);
     $objFormgenerator->addField(new class_formentry_textarea("mail", "body"))->setStrLabel($this->getLang("mail_body"))->setBitMandatory(true);
     return $objFormgenerator;
 }
 /**
  * @see interface_admin_systemtask::getAdminForm()
  * @return string
  */
 public function getAdminForm()
 {
     $strFormName = "permissions";
     $objForm = new class_admin_formgenerator($strFormName, new class_module_system_common());
     $arrGroups = array();
     foreach (class_module_user_group::getObjectList() as $objOneGroup) {
         $arrGroups[$objOneGroup->getSystemid()] = $objOneGroup->getStrDisplayName();
     }
     $objForm->addField(new class_formentry_plaintext())->setStrValue($this->objToolkit->warningBox($this->getLang("systemtask_permissions_hint")));
     $objForm->addField(new class_formentry_dropdown("", "groupid"))->setStrLabel($this->getLang("systemtask_permissions_groupid"))->setBitMandatory(true)->setArrKeyValues($arrGroups);
     $objForm->addField(new class_formentry_text("", "recordid"))->setStrLabel($this->getLang("systemtask_permissions_systemid"))->setBitMandatory(true);
     $objForm->addField(new class_formentry_checkbox("", class_rights::$STR_RIGHT_VIEW))->setStrLabel(class_rights::$STR_RIGHT_VIEW);
     $objForm->addField(new class_formentry_checkbox("", class_rights::$STR_RIGHT_EDIT))->setStrLabel(class_rights::$STR_RIGHT_EDIT);
     $objForm->addField(new class_formentry_checkbox("", class_rights::$STR_RIGHT_DELETE))->setStrLabel(class_rights::$STR_RIGHT_DELETE);
     $objForm->addField(new class_formentry_checkbox("", class_rights::$STR_RIGHT_RIGHT))->setStrLabel(class_rights::$STR_RIGHT_RIGHT);
     $objForm->addField(new class_formentry_checkbox("", class_rights::$STR_RIGHT_RIGHT1))->setStrLabel(class_rights::$STR_RIGHT_RIGHT1);
     $objForm->addField(new class_formentry_checkbox("", class_rights::$STR_RIGHT_RIGHT2))->setStrLabel(class_rights::$STR_RIGHT_RIGHT2);
     $objForm->addField(new class_formentry_checkbox("", class_rights::$STR_RIGHT_RIGHT3))->setStrLabel(class_rights::$STR_RIGHT_RIGHT3);
     $objForm->addField(new class_formentry_checkbox("", class_rights::$STR_RIGHT_RIGHT4))->setStrLabel(class_rights::$STR_RIGHT_RIGHT4);
     $objForm->addField(new class_formentry_checkbox("", class_rights::$STR_RIGHT_RIGHT5))->setStrLabel(class_rights::$STR_RIGHT_RIGHT5);
     $objForm->addField(new class_formentry_checkbox("", class_rights::$STR_RIGHT_CHANGELOG))->setStrLabel(class_rights::$STR_RIGHT_CHANGELOG);
     return $objForm;
 }
 /**
  * @param $bitAlias
  * @param class_module_pages_page $objPage
  * @param $strMode
  *
  * @return class_admin_formgenerator
  */
 private function getPageForm($bitAlias, class_module_pages_page $objPage, $strMode)
 {
     //Load all the Templates available
     $arrTemplates = class_resourceloader::getInstance()->getTemplatesInFolder("/module_pages");
     $arrTemplatesDD = array();
     if (count($arrTemplates) > 0) {
         foreach ($arrTemplates as $strTemplate) {
             $arrTemplatesDD[$strTemplate] = $strTemplate;
         }
     }
     //remove template of master-page when editing a regular page
     $objMasterPage = class_module_pages_page::getPageByName("master");
     if ($objMasterPage != null && ($objPage->getSystemid() == "" || $objMasterPage->getSystemid() != $objPage->getSystemid())) {
         unset($arrTemplatesDD[$objMasterPage->getStrTemplate()]);
     }
     $strPagesBrowser = class_link::getLinkAdminDialog("pages", "pagesFolderBrowser", "&form_element=page_folder_name&pages=1&elements=false&folder=1&pagealiases=1", $this->getLang("commons_open_browser"), $this->getLang("commons_open_browser"), "icon_externalBrowser", $this->getLang("commons_open_browser"));
     $objForm = new class_admin_formgenerator("page", $objPage);
     if ($bitAlias) {
         $objForm->addField(new class_formentry_hidden("page", "name"))->setStrValue(generateSystemid())->setStrLabel($this->getLang("name"));
     } else {
         $objForm->addDynamicField("strName")->setStrLabel($this->getLang("name"));
     }
     $objForm->addDynamicField("browsername")->setStrLabel($this->getLang("browsername"));
     if (!$bitAlias) {
         $objForm->addDynamicField("strSeostring")->setStrLabel($this->getLang("seostring"));
         $objForm->addDynamicField("strDescription")->setStrLabel($this->getLang("commons_description"));
         $objForm->addDynamicField("strKeywords")->setStrLabel($this->getLang("keywords"));
     }
     $strParentId = $objPage->getPrevId();
     if (!validateSystemid($strParentId) && $strMode == "new") {
         $strParentId = $this->getSystemid();
     }
     $strFolderId = $this->getParam("page_folder_name_id");
     $strFolderName = $this->getParam("page_folder_name");
     if (!validateSystemid($strFolderId) && validateSystemid($strParentId)) {
         $objParent = class_objectfactory::getInstance()->getObject($strParentId);
         $strFolderId = $objParent->getSystemid();
         if ($objParent->getSystemid() != $this->getObjModule()->getSystemid()) {
             $strFolderName = $objParent->getStrDisplayName();
         }
     }
     $objForm->addField(new class_formentry_text("page", "folder_name"))->setStrValue($strFolderName)->setBitReadonly(true)->setStrOpener($strPagesBrowser)->setStrLabel($this->getLang("page_folder_name"));
     $objForm->addField(new class_formentry_hidden("page", "folder_name_id"))->setStrValue($strFolderId);
     if (!$bitAlias) {
         /** @var $objField class_formentry_base */
         $objField = $objForm->addDynamicField("strTemplate")->setArrKeyValues($arrTemplatesDD)->setStrLabel($this->getLang("template"));
         if ($strMode == "edit" && $objPage->getStrTemplate() == "") {
             $objField->setStrHint($this->getLang("templateNotSelectedBefore"));
         }
         $bitReadonly = false;
         if (class_module_system_setting::getConfigValue("_pages_templatechange_") == "false") {
             if ($this->getAction() == "newPage" || $this->getParam("mode") == "new") {
                 $bitReadonly = false;
             } else {
                 if ($objPage->getNumberOfElementsOnPage() != 0) {
                     $bitReadonly = true;
                 }
             }
         }
         $objField->setBitReadonly($bitReadonly);
         if ($strMode == "new" && $this->getParam("page_template") == "") {
             $objField->setStrValue(class_module_system_setting::getConfigValue("_pages_defaulttemplate_"));
         }
     } else {
         $objForm->addDynamicField("strAlias")->setStrHint($this->getLang("page_alias_hint"))->setBitMandatory(true)->setStrLabel($this->getLang("page_alias"));
         $objForm->addDynamicField("strTarget")->setStrLabel($this->getLang("page_target"));
     }
     $objForm->addField(new class_formentry_hidden("", "mode"))->setStrValue($strMode);
     return $objForm;
 }