Exemplo n.º 1
0
 /**
  * Method to create a select list of the installed components
  *
  * @access  public
  * @param int ID of current item
  * @param string name of select list
  * @param boolean if true, changing selected item will submit the form (assume is an "adminForm")
  * @param boolean, if true, a line 'Select all' is inserted at the start of the list
  * @param string the "Select all" to be displayed, if $addSelectAll is true
  * @return  string HTML output
  */
 public static function buildComponentsSelectList($current, $name, $autoSubmit = false, $addSelectAll = false, $selectAllTitle = '', $customSubmit = '')
 {
     // load components from DB
     $components = Sh404sefHelperGeneral::getComponentsList();
     // adjust to require format
     $data = array();
     if (!empty($components)) {
         foreach ($components as $component) {
             $data[] = array('id' => $component->element, 'title' => $component->name);
         }
     }
     // use helper to build html
     $list = self::buildSelectList($data, $current, $name, $autoSubmit, $addSelectAll, $selectAllTitle, $customSubmit);
     // return list
     return $list;
 }
Exemplo n.º 2
0
 private function _addFilters()
 {
     // component selector
     JHtmlSidebar::addFilter(JText::_('COM_SH404SEF_ALL_COMPONENTS'), 'filter_component', JHtml::_('select.options', Sh404sefHelperGeneral::getComponentsList(), 'element', 'name', $this->options->filter_component, true));
     // language list
     JHtmlSidebar::addFilter(JText::_('COM_SH404SEF_ALL_LANGUAGES'), 'filter_language', JHtml::_('select.options', JHtml::_('contentlanguage.existing', $all = false, $translate = true), 'value', 'text', $this->options->filter_language, false));
     // select custom
     $data = array(array('value' => Sh404sefHelperGeneral::COM_SH404SEF_ONLY_CUSTOM, 'text' => JText::_('COM_SH404SEF_ONLY_CUSTOM')), array('value' => Sh404sefHelperGeneral::COM_SH404SEF_ONLY_AUTO, 'text' => JText::_('COM_SH404SEF_ONLY_AUTO')));
     JHtmlSidebar::addFilter(JText::_('COM_SH404SEF_ALL_URL_TYPES'), 'filter_url_type', JHtml::_('select.options', $data, 'value', 'text', $this->options->filter_url_type, true));
 }
Exemplo n.º 3
0
 private function _addFilters()
 {
     // component selector
     JHtmlSidebar::addFilter(JText::_('COM_SH404SEF_ALL_COMPONENTS'), 'filter_component', JHtml::_('select.options', Sh404sefHelperGeneral::getComponentsList(), 'element', 'name', $this->options->filter_component, true));
     // language list
     JHtmlSidebar::addFilter(JText::_('COM_SH404SEF_ALL_LANGUAGES'), 'filter_language', JHtml::_('select.options', JHtml::_('contentlanguage.existing', $all = false, $translate = true), 'value', 'text', $this->options->filter_language, false));
 }
Exemplo n.º 4
0
 /**
  * Push current general configuration items
  * values into the view for edition
  */
 private function _pushConfigDataDefault()
 {
     // get configuration object
     $shPageInfo =& Sh404sefFactory::getPageInfo();
     $sefConfig =& Sh404sefFactory::getConfig();
     // push it into to the view
     $this->assignRef('sefConfig', $sefConfig);
     // special check for Joomfish 2.0 : must be sure href are not cached in language selection module
     // otherwise new SEF urls will not be created
     shDisableJFModuleCaching();
     $database =& JFactory::getDBO();
     $std_opt = 'class="inputbox" size="2"';
     $lists['enabled'] = JHTML::_('select.booleanlist', 'Enabled', $std_opt, $sefConfig->Enabled);
     $lists['lowercase'] = JHTML::_('select.booleanlist', 'LowerCase', $std_opt, $sefConfig->LowerCase);
     // shumisha 2007-04-01 new params for cache :
     $lists['shUseURLCache'] = JHTML::_('select.booleanlist', 'shUseURLCache', $std_opt, $sefConfig->shUseURLCache);
     // shumisha 2007-04-03 new params for translation and Itemid :
     $lists['shTranslateURL'] = JHTML::_('select.booleanlist', 'shTranslateURL', $std_opt, $sefConfig->shTranslateURL);
     $lists['shInsertLanguageCode'] = JHTML::_('select.booleanlist', 'shInsertLanguageCode', $std_opt, $sefConfig->shInsertLanguageCode);
     $lists['shInsertGlobalItemidIfNone'] = JHTML::_('select.booleanlist', 'shInsertGlobalItemidIfNone', $std_opt, $sefConfig->shInsertGlobalItemidIfNone);
     $lists['shInsertTitleIfNoItemid'] = JHTML::_('select.booleanlist', 'shInsertTitleIfNoItemid', $std_opt, $sefConfig->shInsertTitleIfNoItemid);
     $lists['shAlwaysInsertMenuTitle'] = JHTML::_('select.booleanlist', 'shAlwaysInsertMenuTitle', $std_opt, $sefConfig->shAlwaysInsertMenuTitle);
     $lists['shAlwaysInsertItemid'] = JHTML::_('select.booleanlist', 'shAlwaysInsertItemid', $std_opt, $sefConfig->shAlwaysInsertItemid);
     // V 1.2.4.q new param for URL encoding
     $lists['shEncodeUrl'] = JHTML::_('select.booleanlist', 'shEncodeUrl', $std_opt, $sefConfig->shEncodeUrl);
     $lists['guessItemidOnHomepage'] = JHTML::_('select.booleanlist', 'guessItemidOnHomepage', $std_opt, $sefConfig->guessItemidOnHomepage);
     $lists['shForceNonSefIfHttps'] = JHTML::_('select.booleanlist', 'shForceNonSefIfHttps', $std_opt, $sefConfig->shForceNonSefIfHttps);
     $shRewriteMode[] = JHTML::_('select.option', '0', JText::_('COM_SH404SEF_RW_MODE_NORMAL'));
     $shRewriteMode[] = JHTML::_('select.option', '1', JText::_('COM_SH404SEF_RW_MODE_INDEXPHP'));
     $lists['shRewriteMode'] = JHTML::_('select.genericlist', $shRewriteMode, 'shRewriteMode', "class=\"inputbox\" size=\"1\"", 'value', 'text', $sefConfig->shRewriteMode);
     $lists['shRemoveGeneratorTag'] = JHTML::_('select.booleanlist', 'shRemoveGeneratorTag', $std_opt, $sefConfig->shRemoveGeneratorTag);
     $lists['shPutH1Tags'] = JHTML::_('select.booleanlist', 'shPutH1Tags', $std_opt, $sefConfig->shPutH1Tags);
     $lists['shMetaManagementActivated'] = JHTML::_('select.booleanlist', 'shMetaManagementActivated', $std_opt, $sefConfig->shMetaManagementActivated);
     $lists['shInsertContentTableName'] = JHTML::_('select.booleanlist', 'shInsertContentTableName', $std_opt, $sefConfig->shInsertContentTableName);
     $shAutoRedirectWww[] = JHTML::_('select.option', '0', JText::_('COM_SH404SEF_WWW_DONT_ENFORCE'));
     $shAutoRedirectWww[] = JHTML::_('select.option', '1', JText::_('COM_SH404SEF_WWW_ENFORCE_WWW'));
     $shAutoRedirectWww[] = JHTML::_('select.option', '2', JText::_('COM_SH404SEF_WWW_ENFORCE_NO_WWW'));
     $lists['shAutoRedirectWww'] = JHTML::_('select.genericlist', $shAutoRedirectWww, 'shAutoRedirectWww', "class=\"inputbox\" size=\"1\"", 'value', 'text', $sefConfig->shAutoRedirectWww);
     $lists['usealias'] = JHTML::_('select.booleanlist', 'UseAlias', $std_opt, $sefConfig->UseAlias);
     // shumisha 2007-04-11 new params for non-sef to sef 301 redirect :
     $lists['shRedirectNonSefToSef'] = JHTML::_('select.booleanlist', 'shRedirectNonSefToSef', $std_opt, $sefConfig->shRedirectNonSefToSef);
     // shumisha 2007-05-04 new params for joomla sef to sef 301 redirect :
     $lists['shRedirectJoomlaSefToSef'] = JHTML::_('select.booleanlist', 'shRedirectJoomlaSefToSef', $std_opt, $sefConfig->shRedirectJoomlaSefToSef);
     // V 1.2.4.k 404 errors loggin is now optional
     $lists['shLog404Errors'] = JHTML::_('select.booleanlist', 'shLog404Errors', $std_opt, $sefConfig->shLog404Errors);
     $lists['shInsertContentBlogName'] = JHTML::_('select.booleanlist', 'shInsertContentBlogName', $std_opt, $sefConfig->shInsertContentBlogName);
     // V 1.2.4.t 19/08/2007 16:26:46
     $lists['shKeepStandardURLOnUpgrade'] = JHTML::_('select.booleanlist', 'shKeepStandardURLOnUpgrade', $std_opt, $sefConfig->shKeepStandardURLOnUpgrade);
     $lists['shKeepCustomURLOnUpgrade'] = JHTML::_('select.booleanlist', 'shKeepCustomURLOnUpgrade', $std_opt, $sefConfig->shKeepCustomURLOnUpgrade);
     $lists['shKeepMetaDataOnUpgrade'] = JHTML::_('select.booleanlist', 'shKeepMetaDataOnUpgrade', $std_opt, $sefConfig->shKeepMetaDataOnUpgrade);
     // V 1.2.4.t 24/08/2007 12:56:16
     $lists['shMultipagesTitle'] = JHTML::_('select.booleanlist', 'shMultipagesTitle', $std_opt, $sefConfig->shMultipagesTitle);
     // V x
     $lists['shKeepConfigOnUpgrade'] = JHTML::_('select.booleanlist', 'shKeepConfigOnUpgrade', $std_opt, $sefConfig->shKeepConfigOnUpgrade);
     // V x : per language insert iso code and translate URl params and page text
     $activeLanguages = shGetActiveLanguages();
     $lists['activeLanguages'][] = $shPageInfo->shMosConfig_locale;
     // put default in first place
     $shLangOption[] = JHTML::_('select.option', '0', JText::_('COM_SH404SEF_DEFAULT'));
     $shLangOption[] = JHTML::_('select.option', '1', JText::_('COM_SH404SEF_YES'));
     $shLangOption[] = JHTML::_('select.option', '2', JText::_('COM_SH404SEF_NO'));
     foreach ($activeLanguages as $language) {
         $currentLang = $language->code;
         if ($currentLang != $shPageInfo->shMosConfig_locale) {
             $lists['activeLanguages'][] = $currentLang;
         }
         $lists['languages_' . $currentLang . '_translateURL'] = JHTML::_('select.genericlist', $shLangOption, 'languages_' . $currentLang . '_translateURL', "class=\"inputbox\" size=\"1\"", 'value', 'text', $sefConfig->shLangTranslateList[$currentLang]);
         $lists['languages_' . $currentLang . '_insertCode'] = JHTML::_('select.genericlist', $shLangOption, 'languages_' . $currentLang . '_insertCode', "class=\"inputbox\" size=\"1\"", 'value', 'text', $sefConfig->shLangInsertCodeList[$currentLang]);
     }
     $lists['debugToLogFile'] = JHTML::_('select.booleanlist', 'debugToLogFile', $std_opt, $sefConfig->debugToLogFile);
     //build mode list and create the list
     $mode = array();
     $mode[] = JHTML::_('select.option', 0, JText::_('COM_SH404SEF_USE_DEFAULT'));
     $mode[] = JHTML::_('select.option', 1, JText::_('COM_SH404SEF_NOCACHE'));
     $mode[] = JHTML::_('select.option', 2, JText::_('COM_SH404SEF_SKIP'));
     $mode[] = JHTML::_('select.option', 3, JText::_('COM_SH404SEF_USE_JOOMLA_ROUTER'));
     $modeTranslate[] = JHTML::_('select.option', 0, JText::_('COM_SH404SEF_TRANSLATE_URL'));
     // V 1.2.4.m
     $modeTranslate[] = JHTML::_('select.option', 1, JText::_('COM_SH404SEF_DO_NOT_TRANSLATE_URL'));
     $modeInsertIso[] = JHTML::_('select.option', 0, JText::_('COM_SH404SEF_INSERT_LANGUAGE_CODE'));
     $modeInsertIso[] = JHTML::_('select.option', 1, JText::_('COM_SH404SEF_DO_NOT_INSERT_LANGUAGE_CODE'));
     $modeshDoNotOverrideOwnSef[] = JHTML::_('select.option', Sh404sefClassBaseextplugin::TYPE_SH404SEF_ROUTER, JText::_('COM_SH404SEF_USE_SH404SEF_PLUGIN'));
     $modeshDoNotOverrideOwnSef[] = JHTML::_('select.option', Sh404sefClassBaseextplugin::TYPE_JOOMLA_ROUTER, JText::_('COM_SH404SEF_USE_JOOMLA_PLUGIN'));
     $modeshDoNotOverrideOwnSef[] = JHTML::_('select.option', Sh404sefClassBaseextplugin::TYPE_JOOMSEF_ROUTER, JText::_('COM_SH404SEF_USE_JOOMSEF_PLUGIN'));
     $modeshDoNotOverrideOwnSef[] = JHTML::_('select.option', Sh404sefClassBaseextplugin::TYPE_ACESEF_ROUTER, JText::_('COM_SH404SEF_USE_ACESEF_PLUGIN'));
     $compEnablePageId[] = JHTML::_('select.option', 1, JText::_('COM_SH404SEF_ENABLE_PAGEID'));
     $compEnablePageId[] = JHTML::_('select.option', 0, JText::_('COM_SH404SEF_DISABLE_PAGEID'));
     $installedComponents = Sh404sefHelperGeneral::getComponentsList();
     while (list($comName, $comp) = each($installedComponents)) {
         $name = str_replace('com_', '', $comName);
         $selectedmode = in_array($name, $sefConfig->nocache) * 1 + in_array($name, $sefConfig->skip) * 2 + in_array($name, $sefConfig->useJoomlaRouter) * 3;
         $lists['adv_config'][$name]['manageURL'] = JHTML::_('select.genericlist', $mode, 'com_' . $name . '___manageURL', 'class="inputbox" size="1"', 'value', 'text', $selectedmode);
         $selectedmode = in_array($name, $sefConfig->notTranslateURLList);
         $lists['adv_config'][$name]['translateURL'] = JHTML::_('select.genericlist', $modeTranslate, 'com_' . $name . '___translateURL', 'class="inputbox" size="1"', 'value', 'text', $selectedmode);
         $selectedmode = in_array($name, $sefConfig->notInsertIsoCodeList);
         $lists['adv_config'][$name]['insertIsoCode'] = JHTML::_('select.genericlist', $modeInsertIso, 'com_' . $name . '___insertIsoCode', 'class="inputbox" size="1"', 'value', 'text', $selectedmode);
         if (in_array($name, $sefConfig->useJoomsefRouter)) {
             $selectedmode = Sh404sefClassBaseextplugin::TYPE_JOOMSEF_ROUTER;
         } else {
             if (in_array($name, $sefConfig->useAcesefRouter)) {
                 $selectedmode = Sh404sefClassBaseextplugin::TYPE_ACESEF_ROUTER;
             } else {
                 $selectedmode = in_array($name, $sefConfig->shDoNotOverrideOwnSef);
             }
         }
         $lists['adv_config'][$name]['shDoNotOverrideOwnSef'] = JHTML::_('select.genericlist', $modeshDoNotOverrideOwnSef, 'com_' . $name . '___shDoNotOverrideOwnSef', 'class="inputbox" size="1"', 'value', 'text', $selectedmode);
         $selectedmode = in_array($name, $sefConfig->compEnablePageId) ? 1 : 0;
         $lists['adv_config'][$name]['compEnablePageId'] = JHTML::_('select.genericlist', $compEnablePageId, 'com_' . $name . '___compEnablePageId', 'class="inputbox" size="1"', 'value', 'text', $selectedmode);
         $defaultString = empty($sefConfig->defaultComponentStringList[@$name]) ? '' : $sefConfig->defaultComponentStringList[$name];
         $compName = 'com_' . $name . '___defaultComponentString';
         $lists['adv_config'][$name]['defaultComponentString'] = '<td width="150"><input type="text" name="' . $compName . '" value="' . $defaultString . '" size="30" maxlength="30"></td>';
     }
     // V 1.0.3
     $lists['defaultParamList'] = $sefConfig->defaultParamList;
     //  V 1.012
     $lists['useCatAlias'] = JHTML::_('select.booleanlist', 'useCatAlias', $std_opt, $sefConfig->useCatAlias);
     $lists['useMenuAlias'] = JHTML::_('select.booleanlist', 'useMenuAlias', $std_opt, $sefConfig->useMenuAlias);
     // V 1.5.3
     $lists['alwaysAppendItemsPerPage'] = JHTML::_('select.booleanlist', 'alwaysAppendItemsPerPage', $std_opt, $sefConfig->alwaysAppendItemsPerPage);
     $lists['redirectToCorrectCaseUrl'] = JHTML::_('select.booleanlist', 'redirectToCorrectCaseUrl', $std_opt, $sefConfig->redirectToCorrectCaseUrl);
     // V 1.5.5
     $lists['ContentTitleShowCat'] = JHTML::_('select.booleanlist', 'ContentTitleShowCat', $std_opt, $sefConfig->ContentTitleShowCat);
     $lists['ContentTitleUseAlias'] = JHTML::_('select.booleanlist', 'ContentTitleUseAlias', $std_opt, $sefConfig->ContentTitleUseAlias);
     $lists['ContentTitleUseCatAlias'] = JHTML::_('select.booleanlist', 'ContentTitleUseCatAlias', $std_opt, $sefConfig->ContentTitleUseCatAlias);
     $lists['autoCheckNewVersion'] = JHTML::_('select.booleanlist', 'autoCheckNewVersion', $std_opt, $sefConfig->autoCheckNewVersion);
     $lists['enablePageId'] = JHTML::_('select.booleanlist', 'enablePageId', $std_opt, $sefConfig->enablePageId);
     // V 2.1.4
     $lists['slowServer'] = JHTML::_('select.booleanlist', 'slowServer', $std_opt, $sefConfig->slowServer);
     // V 2.1.11
     $lists['insertShortlinkTag'] = JHTML::_('select.booleanlist', 'insertShortlinkTag', $std_opt, $sefConfig->insertShortlinkTag);
     $lists['insertRevCanTag'] = JHTML::_('select.booleanlist', 'insertRevCanTag', $std_opt, $sefConfig->insertRevCanTag);
     $lists['insertAltShorterTag'] = JHTML::_('select.booleanlist', 'insertAltShorterTag', $std_opt, $sefConfig->insertAltShorterTag);
     $lists['stopCreatingShurls'] = JHTML::_('select.booleanlist', 'stopCreatingShurls', $std_opt, $sefConfig->stopCreatingShurls);
     // 3.4
     $lists['enableMultiLingualSupport'] = JHTML::_('select.booleanlist', 'enableMultiLingualSupport', $std_opt, $sefConfig->enableMultiLingualSupport);
     // push into view
     $this->assign('lists', $lists);
 }
Exemplo n.º 5
0
    private function _getByComponentFieldJ2()
    {
        $installedComponents = Sh404sefHelperGeneral::getComponentsList();
        $xml = '';
        $xml .= '<fieldset name="by_component" label="COM_SH404SEF_CONF_TAB_BY_COMPONENT" description="" groupname="COM_SH404SEF_CONFIG">';
        $xml .= '<field type="spacer" class="text" label="" description="COM_SH404SEF_TT_ADV_MANAGE_URL"/>
				<field type="spacer" class="text" label="" description="COM_SH404SEF_TT_ADV_TRANSLATE_URL"/>
				<field type="spacer" class="text" label="" description="COM_SH404SEF_TT_ADV_INSERT_ISO"/>
				<field type="spacer" class="text" label="" description="COM_SH404SEF_TT_ADV_OVERRIDE_SEF"/>
				<field type="spacer" class="text" label="" description="COM_SH404SEF_TT_COMP_ENABLE_PAGEID"/>
				<field type="spacer" class="text" label="" description="COM_SH404SEF_TT_ADV_COMP_DEFAULT_STRING"/>';
        foreach ($installedComponents as $name => $properties) {
            $xml .= '<field menu="hide" name="' . $name . '___manageURL" type="list" default="0" label="' . str_replace('com_', '', $name) . '" description="">';
            $xml .= '<option value="0">COM_SH404SEF_USE_DEFAULT</option>
					<option value="1">COM_SH404SEF_NOCACHE</option>
					<option value="2">COM_SH404SEF_SKIP</option>
					<option value="3">COM_SH404SEF_USE_JOOMLA_ROUTER</option>';
            $xml .= '</field>';
            $xml .= '<field menu="hide" name="' . $name . '___translateURL" type="list" default="" label="" description="">';
            $xml .= '<option value="0">COM_SH404SEF_TRANSLATE_URL</option>
					<option value="1">COM_SH404SEF_DO_NOT_TRANSLATE_URL</option>';
            $xml .= '</field>';
            $xml .= '<field menu="hide" name="' . $name . '___insertIsoCode" type="list" default="" label="" description="">';
            $xml .= '<option value="0">COM_SH404SEF_INSERT_LANGUAGE_CODE</option>
					<option value="1">COM_SH404SEF_DO_NOT_INSERT_LANGUAGE_CODE</option>';
            $xml .= '</field>';
            $xml .= '<field menu="hide" name="' . $name . '___shDoNotOverrideOwnSef" type="list" default="" label="" description="">';
            $xml .= '<option value="0">COM_SH404SEF_OVERRIDE_SEF_EXT</option>
					<option value="1">COM_SH404SEF_USE_JOOMLA_PLUGIN</option>
					<option value="30">COM_SH404SEF_USE_JOOMSEF_PLUGIN</option>
					<option value="40">COM_SH404SEF_USE_ACESEF_PLUGIN</option>';
            $xml .= '</field>';
            $xml .= '<field menu="hide" name="' . $name . '___compEnablePageId" type="list" default="" label="" description="">';
            $xml .= '<option value="0">COM_SH404SEF_DISABLE_PAGEID</option>
					<option value="1">COM_SH404SEF_ENABLE_PAGEID</option>';
            $xml .= '</field>';
            $xml .= '<field menu="hide" type="text" name="' . $name . '___defaultComponentString" default=""  label="" description="" size="30" maxlength="30"/>';
        }
        $xml .= '</fieldset>';
        $element = new SimpleXMLElement($xml);
        return $element;
    }
Exemplo n.º 6
0
 /**
  * Push current general configuration items
  * values into the view for edition
  */
 private function _pushConfigDataDefault()
 {
     global $sef_config_file;
     // get configuration object
     $sefConfig =& shRouter::shGetConfig();
     // push it into to the view
     $this->assignRef('sefConfig', $sefConfig);
     // special check for Joomfish 2.0 : must be sure href are not cached in language selection module
     // otherwise new SEF urls will not be created
     shDisableJFModuleCaching();
     $database =& JFactory::getDBO();
     $std_opt = 'class="inputbox" size="2"';
     $lists['enabled'] = JHTML::_('select.booleanlist', 'Enabled', $std_opt, $sefConfig->Enabled);
     $lists['lowercase'] = JHTML::_('select.booleanlist', 'LowerCase', $std_opt, $sefConfig->LowerCase);
     // shumisha 2007-04-01 new params for cache :
     $lists['shUseURLCache'] = JHTML::_('select.booleanlist', 'shUseURLCache', $std_opt, $sefConfig->shUseURLCache);
     // shumisha 2007-04-03 new params for translation and Itemid :
     $lists['shTranslateURL'] = JHTML::_('select.booleanlist', 'shTranslateURL', $std_opt, $sefConfig->shTranslateURL);
     $lists['shInsertLanguageCode'] = JHTML::_('select.booleanlist', 'shInsertLanguageCode', $std_opt, $sefConfig->shInsertLanguageCode);
     $lists['shInsertGlobalItemidIfNone'] = JHTML::_('select.booleanlist', 'shInsertGlobalItemidIfNone', $std_opt, $sefConfig->shInsertGlobalItemidIfNone);
     $lists['shInsertTitleIfNoItemid'] = JHTML::_('select.booleanlist', 'shInsertTitleIfNoItemid', $std_opt, $sefConfig->shInsertTitleIfNoItemid);
     $lists['shAlwaysInsertMenuTitle'] = JHTML::_('select.booleanlist', 'shAlwaysInsertMenuTitle', $std_opt, $sefConfig->shAlwaysInsertMenuTitle);
     $lists['shAlwaysInsertItemid'] = JHTML::_('select.booleanlist', 'shAlwaysInsertItemid', $std_opt, $sefConfig->shAlwaysInsertItemid);
     // shumisha 2007-04-11 new params for Numerical Id insert :
     $lists['shInsertNumericalId'] = JHTML::_('select.booleanlist', 'shInsertNumericalId', $std_opt, $sefConfig->shInsertNumericalId);
     // build the html select list for category : copied from rd_rss admin file
     // note : we could do only one request to db and sort in memory !
     $lookup = '';
     if ($sefConfig->shInsertNumericalIdCatList) {
         // V 1.2.4.q shInsertNumericalIdCatList can be empty so let's protect query
         $shANDCatList = implode(', ', $sefConfig->shInsertNumericalIdCatList);
         if (!empty($shANDCatList)) {
             $shANDCatList = "\n AND c.id IN ( " . $shANDCatList . " )";
         }
         $query = "SELECT c.id AS `value`, c.section AS `id`, CONCAT_WS( ' / ', s.title, c.title) AS `text`" . "\n FROM #__sections AS s" . "\n INNER JOIN #__categories AS c ON c.section = s.id" . "\n WHERE s.scope = 'content'" . $shANDCatList . "\n ORDER BY s.name,c.name";
         $database->setQuery($query);
         $lookup = $database->loadObjectList();
     }
     $category[] = JHTML::_('select.option', '', COM_SH404SEF_INSERT_NUMERICAL_ID_ALL_CAT);
     $query = "SELECT c.id AS `value`, c.section AS `id`, CONCAT_WS( ' / ', s.title, c.title) AS `text`" . "\n FROM #__sections AS s" . "\n INNER JOIN #__categories AS c ON c.section = s.id" . "\n WHERE s.scope = 'content'" . "\n ORDER BY s.name,c.name";
     $database->setQuery($query);
     $catList = $database->loadObjectList();
     if (is_array($catList)) {
         $category = array_merge($category, $catList);
     }
     $category = JHTML::_('select.genericlist', $category, 'shInsertNumericalIdCatList[]', 'class="inputbox" size="10" multiple="multiple"', 'value', 'text', $lookup);
     //$category = JHTML::_('select.genericlist', $category, 'shInsertNumericalIdCatList[]',
     //'class="inputbox" size="10" multiple="multiple"', 'value', 'text', $lookup );
     $lists['shInsertNumericalIdCatList'] = $category;
     // V 1.2.4.q new param for URL encoding
     $lists['shEncodeUrl'] = JHTML::_('select.booleanlist', 'shEncodeUrl', $std_opt, $sefConfig->shEncodeUrl);
     $lists['guessItemidOnHomepage'] = JHTML::_('select.booleanlist', 'guessItemidOnHomepage', $std_opt, $sefConfig->guessItemidOnHomepage);
     $lists['shForceNonSefIfHttps'] = JHTML::_('select.booleanlist', 'shForceNonSefIfHttps', $std_opt, $sefConfig->shForceNonSefIfHttps);
     $shRewriteMode[] = JHTML::_('select.option', '0', COM_SH404SEF_RW_MODE_NORMAL);
     $shRewriteMode[] = JHTML::_('select.option', '1', COM_SH404SEF_RW_MODE_INDEXPHP);
     $shRewriteMode[] = JHTML::_('select.option', '2', COM_SH404SEF_RW_MODE_INDEXPHP2);
     $lists['shRewriteMode'] = JHTML::_('select.genericlist', $shRewriteMode, 'shRewriteMode', "class=\"inputbox\" size=\"1\"", 'value', 'text', $sefConfig->shRewriteMode);
     $lists['shRemoveGeneratorTag'] = JHTML::_('select.booleanlist', 'shRemoveGeneratorTag', $std_opt, $sefConfig->shRemoveGeneratorTag);
     $lists['shPutH1Tags'] = JHTML::_('select.booleanlist', 'shPutH1Tags', $std_opt, $sefConfig->shPutH1Tags);
     $lists['shMetaManagementActivated'] = JHTML::_('select.booleanlist', 'shMetaManagementActivated', $std_opt, $sefConfig->shMetaManagementActivated);
     $lists['shInsertContentTableName'] = JHTML::_('select.booleanlist', 'shInsertContentTableName', $std_opt, $sefConfig->shInsertContentTableName);
     $lists['shAutoRedirectWww'] = JHTML::_('select.booleanlist', 'shAutoRedirectWww', $std_opt, $sefConfig->shAutoRedirectWww);
     $lists['usealias'] = JHTML::_('select.booleanlist', 'UseAlias', $std_opt, $sefConfig->UseAlias);
     // shumisha 2007-04-11 new params for non-sef to sef 301 redirect :
     $lists['shRedirectNonSefToSef'] = JHTML::_('select.booleanlist', 'shRedirectNonSefToSef', $std_opt, $sefConfig->shRedirectNonSefToSef);
     // shumisha 2007-05-04 new params for joomla sef to sef 301 redirect :
     $lists['shRedirectJoomlaSefToSef'] = JHTML::_('select.booleanlist', 'shRedirectJoomlaSefToSef', $std_opt, $sefConfig->shRedirectJoomlaSefToSef);
     // V 1.2.4.k 404 errors loggin is now optional
     $lists['shLog404Errors'] = JHTML::_('select.booleanlist', 'shLog404Errors', $std_opt, $sefConfig->shLog404Errors);
     $lists['shInsertContentBlogName'] = JHTML::_('select.booleanlist', 'shInsertContentBlogName', $std_opt, $sefConfig->shInsertContentBlogName);
     // V 1.2.4.t 19/08/2007 16:26:46
     $lists['shKeepStandardURLOnUpgrade'] = JHTML::_('select.booleanlist', 'shKeepStandardURLOnUpgrade', $std_opt, $sefConfig->shKeepStandardURLOnUpgrade);
     $lists['shKeepCustomURLOnUpgrade'] = JHTML::_('select.booleanlist', 'shKeepCustomURLOnUpgrade', $std_opt, $sefConfig->shKeepCustomURLOnUpgrade);
     $lists['shKeepMetaDataOnUpgrade'] = JHTML::_('select.booleanlist', 'shKeepMetaDataOnUpgrade', $std_opt, $sefConfig->shKeepMetaDataOnUpgrade);
     // V 1.2.4.t 24/08/2007 12:56:16
     $lists['shMultipagesTitle'] = JHTML::_('select.booleanlist', 'shMultipagesTitle', $std_opt, $sefConfig->shMultipagesTitle);
     // V x
     $lists['shKeepConfigOnUpgrade'] = JHTML::_('select.booleanlist', 'shKeepConfigOnUpgrade', $std_opt, $sefConfig->shKeepConfigOnUpgrade);
     // V x : per language insert iso code and translate URl params and page text
     $activeLanguages = shGetActiveLanguages();
     $lists['activeLanguages'][] = $GLOBALS['shMosConfig_locale'];
     // put default in first place
     $shLangOption[] = JHTML::_('select.option', '0', COM_SH404SEF_DEFAULT);
     $shLangOption[] = JHTML::_('select.option', '1', COM_SH404SEF_YES);
     $shLangOption[] = JHTML::_('select.option', '2', COM_SH404SEF_NO);
     foreach ($activeLanguages as $language) {
         $currentLang = $language->code;
         if ($currentLang != $GLOBALS['shMosConfig_locale']) {
             $lists['activeLanguages'][] = $currentLang;
         }
         $lists['languages_' . $currentLang . '_translateURL'] = JHTML::_('select.genericlist', $shLangOption, 'languages_' . $currentLang . '_translateURL', "class=\"inputbox\" size=\"1\"", 'value', 'text', $sefConfig->shLangTranslateList[$currentLang]);
         $lists['languages_' . $currentLang . '_insertCode'] = JHTML::_('select.genericlist', $shLangOption, 'languages_' . $currentLang . '_insertCode', "class=\"inputbox\" size=\"1\"", 'value', 'text', $sefConfig->shLangInsertCodeList[$currentLang]);
     }
     $lists['debugToLogFile'] = JHTML::_('select.booleanlist', 'debugToLogFile', $std_opt, $sefConfig->debugToLogFile);
     //build mode list and create the list
     $mode = array();
     $mode[] = JHTML::_('select.option', 0, COM_SH404SEF_USE_DEFAULT);
     $mode[] = JHTML::_('select.option', 1, COM_SH404SEF_NOCACHE);
     $mode[] = JHTML::_('select.option', 2, COM_SH404SEF_SKIP);
     $modeTranslate[] = JHTML::_('select.option', 0, COM_SH404SEF_TRANSLATE_URL);
     // V 1.2.4.m
     $modeTranslate[] = JHTML::_('select.option', 1, COM_SH404SEF_DO_NOT_TRANSLATE_URL);
     $modeInsertIso[] = JHTML::_('select.option', 0, COM_SH404SEF_INSERT_LANGUAGE_CODE);
     $modeInsertIso[] = JHTML::_('select.option', 1, COM_SH404SEF_DO_NOT_INSERT_LANGUAGE_CODE);
     $modeshDoNotOverrideOwnSef[] = JHTML::_('select.option', Sh404sefClassBaseextplugin::TYPE_SH404SEF_ROUTER, JText16::_('COM_SH404SEF_USE_SH404SEF_PLUGIN'));
     $modeshDoNotOverrideOwnSef[] = JHTML::_('select.option', Sh404sefClassBaseextplugin::TYPE_JOOMLA_ROUTER, JText16::_('COM_SH404SEF_USE_JOOMLA_PLUGIN'));
     $modeshDoNotOverrideOwnSef[] = JHTML::_('select.option', Sh404sefClassBaseextplugin::TYPE_JOOMSEF_ROUTER, JText16::_('COM_SH404SEF_USE_JOOMSEF_PLUGIN'));
     $modeshDoNotOverrideOwnSef[] = JHTML::_('select.option', Sh404sefClassBaseextplugin::TYPE_ACESEF_ROUTER, JText16::_('COM_SH404SEF_USE_ACESEF_PLUGIN'));
     $compEnablePageId[] = JHTML::_('select.option', 1, JText16::_('COM_SH404SEF_ENABLE_PAGEID'));
     $compEnablePageId[] = JHTML::_('select.option', 0, JText16::_('COM_SH404SEF_DISABLE_PAGEID'));
     $installedComponents = Sh404sefHelperGeneral::getComponentsList();
     while (list($comName, $comp) = each($installedComponents)) {
         $name = str_replace('com_', '', $comName);
         $selectedmode = in_array($name, $sefConfig->nocache) * 1 + in_array($name, $sefConfig->skip) * 2;
         $lists['adv_config'][$name]['manageURL'] = JHTML::_('select.genericlist', $mode, 'com_' . $name . '___manageURL', 'class="inputbox" size="1"', 'value', 'text', $selectedmode);
         $selectedmode = in_array($name, $sefConfig->notTranslateURLList);
         $lists['adv_config'][$name]['translateURL'] = JHTML::_('select.genericlist', $modeTranslate, 'com_' . $name . '___translateURL', 'class="inputbox" size="1"', 'value', 'text', $selectedmode);
         $selectedmode = in_array($name, $sefConfig->notInsertIsoCodeList);
         $lists['adv_config'][$name]['insertIsoCode'] = JHTML::_('select.genericlist', $modeInsertIso, 'com_' . $name . '___insertIsoCode', 'class="inputbox" size="1"', 'value', 'text', $selectedmode);
         if (in_array($name, $sefConfig->useJoomsefRouter)) {
             $selectedmode = Sh404sefClassBaseextplugin::TYPE_JOOMSEF_ROUTER;
         } else {
             if (in_array($name, $sefConfig->useAcesefRouter)) {
                 $selectedmode = Sh404sefClassBaseextplugin::TYPE_ACESEF_ROUTER;
             } else {
                 $selectedmode = in_array($name, $sefConfig->shDoNotOverrideOwnSef);
             }
         }
         $lists['adv_config'][$name]['shDoNotOverrideOwnSef'] = JHTML::_('select.genericlist', $modeshDoNotOverrideOwnSef, 'com_' . $name . '___shDoNotOverrideOwnSef', 'class="inputbox" size="1"', 'value', 'text', $selectedmode);
         $selectedmode = in_array($name, $sefConfig->compEnablePageId) ? 1 : 0;
         $lists['adv_config'][$name]['compEnablePageId'] = JHTML::_('select.genericlist', $compEnablePageId, 'com_' . $name . '___compEnablePageId', 'class="inputbox" size="1"', 'value', 'text', $selectedmode);
         $defaultString = empty($sefConfig->defaultComponentStringList[@$name]) ? '' : $sefConfig->defaultComponentStringList[$name];
         $compName = 'com_' . $name . '___defaultComponentString';
         $lists['adv_config'][$name]['defaultComponentString'] = '<td width="150"><input type="text" name="' . $compName . '" value="' . $defaultString . '" size="30" maxlength="30"></td>';
     }
     // V 1.0.3
     $lists['defaultParamList'] = $sefConfig->defaultParamList;
     //  V 1.012
     $lists['useCatAlias'] = JHTML::_('select.booleanlist', 'useCatAlias', $std_opt, $sefConfig->useCatAlias);
     $lists['useSecAlias'] = JHTML::_('select.booleanlist', 'useSecAlias', $std_opt, $sefConfig->useSecAlias);
     $lists['useMenuAlias'] = JHTML::_('select.booleanlist', 'useMenuAlias', $std_opt, $sefConfig->useMenuAlias);
     // V 1.5.3
     $lists['alwaysAppendItemsPerPage'] = JHTML::_('select.booleanlist', 'alwaysAppendItemsPerPage', $std_opt, $sefConfig->alwaysAppendItemsPerPage);
     $lists['redirectToCorrectCaseUrl'] = JHTML::_('select.booleanlist', 'redirectToCorrectCaseUrl', $std_opt, $sefConfig->redirectToCorrectCaseUrl);
     // V 1.5.5
     $lists['joomla_live_site'] = shJConfig::get('live_site');
     $goodLiveSite = !empty($lists['joomla_live_site']) && (substr($lists['joomla_live_site'], 0, 7) == 'http://' || substr($lists['joomla_live_site'], 0, 8) == 'https://');
     $lists['joomla_live_site_style'] = $goodLiveSite ? '<span style="color: green;">' : '<span style="color: red;">';
     $lists['joomla_live_site'] = $goodLiveSite ? $lists['joomla_live_site'] : COM_SH404SEF_TT_JOOMLA_LIVE_SITE_MISSING;
     $lists['ContentTitleShowSection'] = JHTML::_('select.booleanlist', 'ContentTitleShowSection', $std_opt, $sefConfig->ContentTitleShowSection);
     $lists['ContentTitleShowCat'] = JHTML::_('select.booleanlist', 'ContentTitleShowCat', $std_opt, $sefConfig->ContentTitleShowCat);
     $lists['ContentTitleUseAlias'] = JHTML::_('select.booleanlist', 'ContentTitleUseAlias', $std_opt, $sefConfig->ContentTitleUseAlias);
     $lists['ContentTitleUseCatAlias'] = JHTML::_('select.booleanlist', 'ContentTitleUseCatAlias', $std_opt, $sefConfig->ContentTitleUseCatAlias);
     $lists['ContentTitleUseSecAlias'] = JHTML::_('select.booleanlist', 'ContentTitleUseSecAlias', $std_opt, $sefConfig->ContentTitleUseSecAlias);
     $lists['autoCheckNewVersion'] = JHTML::_('select.booleanlist', 'autoCheckNewVersion', $std_opt, $sefConfig->autoCheckNewVersion);
     $lists['enablePageId'] = JHTML::_('select.booleanlist', 'enablePageId', $std_opt, $sefConfig->enablePageId);
     // V 2.1.4
     $lists['slowServer'] = JHTML::_('select.booleanlist', 'slowServer', $std_opt, $sefConfig->slowServer);
     // V 2.1.11
     $lists['insertShortlinkTag'] = JHTML::_('select.booleanlist', 'insertShortlinkTag', $std_opt, $sefConfig->insertShortlinkTag);
     $lists['insertRevCanTag'] = JHTML::_('select.booleanlist', 'insertRevCanTag', $std_opt, $sefConfig->insertRevCanTag);
     $lists['insertAltShorterTag'] = JHTML::_('select.booleanlist', 'insertAltShorterTag', $std_opt, $sefConfig->insertAltShorterTag);
     $lists['stopCreatingShurls'] = JHTML::_('select.booleanlist', 'stopCreatingShurls', $std_opt, $sefConfig->stopCreatingShurls);
     // push into view
     $this->assign('lists', $lists);
 }