public function onContentPrepareForm($form, $data) { $app = JFactory::getApplication(); if (!$app->isAdmin()) { return; } $option = JRequest::getWord('option'); $layout = JRequest::getWord('layout'); $task = JRequest::getWord('task'); $module = $this->getModuleType($data); if ($option == 'com_modules' && $layout == 'edit' && $module == 'mod_rokminievents') { JForm::addFieldPath(JPATH_ROOT . '/modules/mod_rokminievents/fields'); //Find Sources $sources = RokMiniEvents_SourceLoader::getAvailableSources(self::$SOURCE_DIR); foreach ($sources as $source_name => $source) { if (file_exists($source->paramspath) && is_readable($source->paramspath)) { $form->loadFile($source->paramspath, false); JForm::addFieldPath(dirname($source->paramspath) . "/" . $source->name); //$this->element_dirs[] = dirname($source->paramspath) . "/" . $source->name; $language =& JFactory::getLanguage(); $language->load('com_' . $source->name, JPATH_ADMINISTRATOR); $language->load($source->name, dirname($source->paramspath), $language->getTag(), true); } } $subfieldform = RokSubfieldForm::getInstance($form); if (!empty($data) && isset($data->params)) { $subfieldform->setOriginalParams($data->params); } if ($task == 'save' || $task == 'apply') { $subfieldform->makeSubfieldsVisable(); } } }
public function onContentPrepareForm($form, $data) { $app = JFactory::getApplication(); if (!$app->isAdmin()) { return; } $option = JRequest::getWord('option'); $layout = JRequest::getWord('layout'); $task = JRequest::getWord('task'); $module = $this->getModuleType($data); if ($option == 'com_modules' && $layout == 'edit' && $module == 'mod_roknavmenu') { require_once JPATH_ROOT . '/modules/mod_roknavmenu/lib/RokNavMenu.php'; require_once JPATH_ROOT . '/modules/mod_roknavmenu/lib/RokSubfieldForm.php'; JForm::addFieldPath(JPATH_ROOT . '/modules/mod_roknavmenu/fields'); RokNavMenu::loadCatalogs(); foreach (RokNavMenu::$themes as $theme_name => $theme_info) { $params_file = $theme_info['path'] . "/parameters.xml"; if (JFile::exists($params_file)) { $form->loadFile($params_file, false); } $fields_folder = $theme_info['path'] . "/fields"; if (JFolder::exists($fields_folder)) { JForm::addFieldPath($fields_folder); } $language_path = $theme_info['path'] . "/language"; if (JFolder::exists($language_path)) { $language =& JFactory::getLanguage(); $language->load($theme_name, $theme_info['path'], $language->getTag(), true); } } $subfieldform = RokSubfieldForm::getInstance($form); if (!empty($data) && isset($data->params)) { $subfieldform->setOriginalParams($data->params); } if ($task == 'save' || $task == 'apply') { $subfieldform->makeSubfieldsVisable(); } } else { if ($option == 'com_menus' && $layout == 'edit') { JForm::addFieldPath(JPATH_ROOT . '/modules/mod_roknavmenu/fields'); // Load 2x Catalog Themes require_once JPATH_ROOT . "/modules/mod_roknavmenu/lib/RokNavMenu.php"; RokNavMenu::loadCatalogs(); foreach (RokNavMenu::$themes as $theme_name => $theme_info) { $item_file = $theme_info['path'] . "/item.xml"; if (JFile::exists($item_file)) { $form->loadFile($item_file, true); } $fields_folder = $theme_info['path'] . "/fields"; if (JFolder::exists($fields_folder)) { JForm::addFieldPath($fields_folder); } } } } }
/** * Method to get the field input markup. * * @return string The field input markup. * @since 1.6 */ protected function getInput() { jimport('joomla.filesystem.folder'); jimport('joomla.filesystem.file'); // Load 2x Catalog Themes require_once JPATH_ROOT . "/modules/mod_roknavmenu/lib/RokNavMenu.php"; RokNavMenu::loadCatalogs(); $buffer = ''; $form = RokSubfieldForm::getInstance($this->form); JForm::addFieldPath(dirname(__FILE__) . '/fields'); $this->load_js_switcher(); $themesets = $form->getSubFieldsets('roknavmenu-themes'); foreach ($themesets as $themeset => $themeset_val) { $themeset_fields = $form->getSubFieldset('roknavmenu-themes', $themeset, 'params'); ob_start(); ?> <div class="themeset" id="themeset-<?php echo $themeset; ?> "> <ul class="themeset"> <?php foreach ($themeset_fields as $themeset_field) { ?> <li> <?php echo $themeset_field->getLabel(); ?> <?php echo $themeset_field->getInput(); ?> </li> <?php } ?> </ul> </div> <?php $buffer .= ob_get_clean(); } return $buffer; }
/** * Method to get the field input markup. * * @return string The field input markup. * @since 1.6 */ protected function getInput() { $buffer = ''; $form = RokSubfieldForm::getInstance($this->form); JForm::addFieldPath(dirname(__FILE__) . '/fields'); $this->load_js_switcher(); $themesets = $form->getSubFieldsets('roknavmenu-themes'); foreach ($themesets as $themeset => $themeset_val) { $themeset_fields = $form->getSubFieldset('roknavmenu-themes', $themeset, 'params'); ob_start(); ?> <div class="themeset" id="themeset-<?php echo $themeset; ?> "> <ul class="themeset"> <?php foreach ($themeset_fields as $themeset_field) { ?> <li> <?php echo $themeset_field->getLabel(); ?> <?php echo $themeset_field->getInput(); ?> </li> <?php } ?> </ul> </div> <?php $buffer .= ob_get_clean(); } return $buffer; }