static function showconfig(&$lists, $MobileJoomla_Settings)
 {
     JHtml::_('behavior.tooltip');
     JHtml::_('behavior.switcher');
     JHtml::_('behavior.modal', 'a.modal');
     JToolBarHelper::title(JText::_('COM_MJ__MOBILE_JOOMLA_SETTINGS'), 'config.php');
     JToolBarHelper::apply();
     JToolBarHelper::cancel('cancel');
     $version = substr(JVERSION, 0, 3);
     $user = JFactory::getUser();
     if ($version != '1.5' && $user->authorise('core.admin', 'com_mobilejoomla')) {
         JToolBarHelper::divider();
         JToolBarHelper::preferences('com_mobilejoomla');
     }
     HTML_mobilejoomla::showNotification();
     $document = JFactory::getDocument();
     $document->addScript(JUri::base(true) . '/components/com_mobilejoomla/js/mj_ui.js');
     $document->addStyleSheet(JUri::base(true) . '/components/com_mobilejoomla/css/mjsettings.css');
     self::$selftest_blob = array();
     self::checkGD2();
     self::checkRemoteConnection();
     self::checkAliasDuplicates();
     self::checkTemplateAssignments();
     self::checkForcedMarkup();
     self::checkDesktopURL($MobileJoomla_Settings);
     $config_blobs = array('COM_MJ__GENERAL_SETTINGS' => array(array('COM_MJ__MOBILE_SITE' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__MOBILE_SITENAME', 'COM_MJ__MOBILE_SITENAME_DESC', 'mobile_sitename'), 'input_blob' => JHtml::_('mjconfig.textinput', 'mobile_sitename', $MobileJoomla_Settings['mobile_sitename'], 30))), 'COM_MJ__IMAGE' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__IMAGE_QUALITY', 'COM_MJ__IMAGE_QUALITY_DESC', 'jpegquality'), 'input_blob' => '<span id="mjconfig_jpegquality_slider" class="mjconfig_slider"><span id="mjconfig_jpegquality_knob" class="mjconfig_knob"></span></span>' . JHtml::_('mjconfig.textinput', 'jpegquality', $MobileJoomla_Settings['jpegquality'], 2, array('style' => 'text-align:right')) . '%'), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__IMAGE_ADAPTATION_METHOD', 'COM_MJ__IMAGE_ADAPTATION_METHOD_DESC'), 'input_blob' => $lists['global.img'])), 'COM_MJ__HOMEPAGE' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__FORCED_HOMEPAGE', 'COM_MJ__FORCED_HOMEPAGE_DESC', 'global.homepage'), 'input_blob' => JHtml::_('mjconfig.textinput', 'global.homepage', $MobileJoomla_Settings['global.homepage'])), array('input_blob' => JHtml::_('mjconfig.menulist', $lists['menuoptions'], 'global.homepage', $MobileJoomla_Settings['global.homepage'])), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__COMPONENT_ON_HOMEPAGE', 'COM_MJ__COMPONENT_ON_HOMEPAGE_DESC'), 'input_blob' => $lists['global.componenthome']))), array('COM_MJ__INFORMATION' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__CURRENT_VERSION'), 'input_blob' => '<p>' . self::getMJVersion() . '</p>'), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__LATEST_VERSION'), 'input_blob' => '<p id="mjconfig_latestver"><span id="mjlatestver"></span> <a class="fltrt modal" id="mjlatestverurl" href="index.php?tmpl=component&option=com_mobilejoomla&task=update" rel="{handler: \'iframe\', size: {x: 480, y: 320}}">' . JText::_('COM_MJ__UPDATE') . '</a></p>')), 'COM_MJ__SUPPORT' => array(array('label_blob' => '<p><a target="_blank" href="http://www.mobilejoomla.com/documentation.html?ref=info">' . JText::_('COM_MJ__DOCUMENTATION') . '</a></p>'), array('label_blob' => '<p><a target="_blank" href="http://www.mobilejoomla.com/forums.html?ref=info">' . JText::_('COM_MJ__FORUMS') . '</a></p>'), array('label_blob' => '<p><a target="_blank" href="http://www.mobilejoomla.com/blog.html?ref=info">' . JText::_('COM_MJ__LATEST_NEWS') . '</a></p>')))), 'COM_MJ__XHTMLMP_SETTINGS' => array(array('COM_MJ__SETTINGS' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__TEMPLATE_NAME', 'COM_MJ__TEMPLATE_NAME_XHTMLMP_DESC'), 'input_blob' => $lists['xhtml.template'])), 'COM_MJ__HOMEPAGE' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__FORCED_HOMEPAGE', 'COM_MJ__FORCED_HOMEPAGE_DESC', 'xhtml.homepage'), 'input_blob' => JHtml::_('mjconfig.textinput', 'xhtml.homepage', $MobileJoomla_Settings['xhtml.homepage'])), array('input_blob' => JHtml::_('mjconfig.menulist', $lists['menuoptions'], 'xhtml.homepage', $MobileJoomla_Settings['xhtml.homepage'])), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__COMPONENT_ON_HOMEPAGE', 'COM_MJ__COMPONENT_ON_HOMEPAGE_DESC'), 'input_blob' => $lists['xhtml.componenthome'])), 'COM_MJ__IMAGE' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__IMAGE_ADAPTATION_METHOD', 'COM_MJ__IMAGE_ADAPTATION_METHOD_DESC'), 'input_blob' => $lists['xhtml.img']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__DECREASE_IMAGE_WIDTH', 'COM_MJ__DECREASE_IMAGE_WIDTH_DESC', 'xhtml.buffer_width'), 'input_blob' => JHtml::_('mjconfig.textinput', 'xhtml.buffer_width', $MobileJoomla_Settings['xhtml.buffer_width'], 5, array('style' => 'text-align:right'))), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__STYLE_IMAGE_SIZE', 'COM_MJ__STYLE_IMAGE_SIZE_DESC'), 'input_blob' => $lists['xhtml.img_addstyles'])), 'COM_MJ__ADVANCED' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__GZIP_COMPRESSION'), 'input_blob' => $lists['xhtml.gzip']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__REMOVE_UNSUPPORTED_TAGS', 'COM_MJ__REMOVE_UNSUPPORTED_TAGS_XHTMLMP_DESC'), 'input_blob' => $lists['xhtml.removetags']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__REMOVE_SCRIPT_TAGS'), 'input_blob' => $lists['xhtml.removescripts']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__CONVERT_HTMLENTITIES', 'COM_MJ__CONVERT_HTMLENTITIES_DESC'), 'input_blob' => $lists['xhtml.entitydecode']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__CONTENT_TYPE', 'COM_MJ__CONTENT_TYPE_DESC'), 'input_blob' => $lists['xhtml.contenttype']))), array('COM_MJ__TEMPLATE_MODULES' => array(), 'COM_MJ__TEMPLATE_OPTIONS' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__USE_HEAD', 'COM_MJ__USE_HEAD_DESC'), 'input_blob' => $lists['xhtml.simplehead']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__EXTENDED_EDITORS', 'COM_MJ__EXTENDED_EDITORS_DESC'), 'input_blob' => $lists['xhtml.allowextedit']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__EMBED_CSS', 'COM_MJ__EMBED_CSS_DESC'), 'input_blob' => $lists['xhtml.embedcss']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__USE_XMLHEAD', 'COM_MJ__USE_XMLHEAD_DESC'), 'input_blob' => $lists['xhtml.xmlhead']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__DOCTYPE_HEAD'), 'input_blob' => $lists['xhtml.doctype']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__XMLNS_IN_HEAD', 'COM_MJ__XMLNS_IN_HEAD_DESC'), 'input_blob' => $lists['xhtml.xmlns'])))), 'COM_MJ__IPHONE_SETTINGS' => array(array('COM_MJ__SETTINGS' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__TEMPLATE_NAME', 'COM_MJ__TEMPLATE_NAME_IPHONE_DESC'), 'input_blob' => $lists['iphone.template'])), 'COM_MJ__HOMEPAGE' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__FORCED_HOMEPAGE', 'COM_MJ__FORCED_HOMEPAGE_DESC', 'iphone.homepage'), 'input_blob' => JHtml::_('mjconfig.textinput', 'iphone.homepage', $MobileJoomla_Settings['iphone.homepage'])), array('input_blob' => JHtml::_('mjconfig.menulist', $lists['menuoptions'], 'iphone.homepage', $MobileJoomla_Settings['iphone.homepage'])), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__COMPONENT_ON_HOMEPAGE', 'COM_MJ__COMPONENT_ON_HOMEPAGE_DESC'), 'input_blob' => $lists['iphone.componenthome'])), 'COM_MJ__IMAGE' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__IMAGE_ADAPTATION_METHOD', 'COM_MJ__IMAGE_ADAPTATION_METHOD_DESC'), 'input_blob' => $lists['iphone.img']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__DECREASE_IMAGE_WIDTH', 'COM_MJ__DECREASE_IMAGE_WIDTH_DESC', 'iphone.buffer_width'), 'input_blob' => JHtml::_('mjconfig.textinput', 'iphone.buffer_width', $MobileJoomla_Settings['iphone.buffer_width'], 5, array('style' => 'text-align:right'))), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__STYLE_IMAGE_SIZE', 'COM_MJ__STYLE_IMAGE_SIZE_DESC'), 'input_blob' => $lists['iphone.img_addstyles'])), 'COM_MJ__ADVANCED' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__GZIP_COMPRESSION'), 'input_blob' => $lists['iphone.gzip']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__REMOVE_UNSUPPORTED_TAGS'), 'input_blob' => $lists['iphone.removetags']))), array('COM_MJ__TEMPLATE_MODULES' => array())), 'COM_MJ__WML_SETTINGS' => array(array('COM_MJ__SETTINGS' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__TEMPLATE_NAME', 'COM_MJ__TEMPLATE_NAME_WML_DESC'), 'input_blob' => $lists['wml.template'])), 'COM_MJ__HOMEPAGE' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__FORCED_HOMEPAGE', 'COM_MJ__FORCED_HOMEPAGE_DESC', 'wml.homepage'), 'input_blob' => JHtml::_('mjconfig.textinput', 'wml.homepage', $MobileJoomla_Settings['wml.homepage'])), array('input_blob' => JHtml::_('mjconfig.menulist', $lists['menuoptions'], 'wml.homepage', $MobileJoomla_Settings['wml.homepage'])), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__COMPONENT_ON_HOMEPAGE', 'COM_MJ__COMPONENT_ON_HOMEPAGE_DESC'), 'input_blob' => $lists['wml.componenthome'])), 'COM_MJ__IMAGE' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__IMAGE_ADAPTATION_METHOD', 'COM_MJ__IMAGE_ADAPTATION_METHOD_DESC'), 'input_blob' => $lists['wml.img']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__DECREASE_IMAGE_WIDTH', 'COM_MJ__DECREASE_IMAGE_WIDTH_DESC', 'wml.buffer_width'), 'input_blob' => JHtml::_('mjconfig.textinput', 'wml.buffer_width', $MobileJoomla_Settings['wml.buffer_width'], 5, array('style' => 'text-align:right')))), 'COM_MJ__ADVANCED' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__GZIP_COMPRESSION'), 'input_blob' => $lists['wml.gzip']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__REMOVE_UNSUPPORTED_TAGS'), 'input_blob' => $lists['wml.removetags']))), array('COM_MJ__TEMPLATE_MODULES' => array(), 'COM_MJ__TEMPLATE_OPTIONS' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__MODULE_WMLCARDS', 'COM_MJ__MODULE_WMLCARDS_DESC'), 'input_blob' => $lists['wml.cards'])))), 'COM_MJ__CHTML_SETTINGS' => array(array('COM_MJ__SETTINGS' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__TEMPLATE_NAME', 'COM_MJ__TEMPLATE_NAME_CHTML_DESC'), 'input_blob' => $lists['chtml.template'])), 'COM_MJ__HOMEPAGE' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__FORCED_HOMEPAGE', 'COM_MJ__FORCED_HOMEPAGE_DESC', 'chtml.homepage'), 'input_blob' => JHtml::_('mjconfig.textinput', 'chtml.homepage', $MobileJoomla_Settings['chtml.homepage'])), array('input_blob' => JHtml::_('mjconfig.menulist', $lists['menuoptions'], 'chtml.homepage', $MobileJoomla_Settings['chtml.homepage'])), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__COMPONENT_ON_HOMEPAGE', 'COM_MJ__COMPONENT_ON_HOMEPAGE_DESC'), 'input_blob' => $lists['chtml.componenthome'])), 'COM_MJ__IMAGE' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__IMAGE_ADAPTATION_METHOD', 'COM_MJ__IMAGE_ADAPTATION_METHOD_DESC'), 'input_blob' => $lists['chtml.img']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__DECREASE_IMAGE_WIDTH', 'COM_MJ__DECREASE_IMAGE_WIDTH_DESC', 'chtml.buffer_width'), 'input_blob' => JHtml::_('mjconfig.textinput', 'chtml.buffer_width', $MobileJoomla_Settings['chtml.buffer_width'], 5, array('style' => 'text-align:right')))), 'COM_MJ__ADVANCED' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__GZIP_COMPRESSION'), 'input_blob' => $lists['chtml.gzip']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__REMOVE_UNSUPPORTED_TAGS'), 'input_blob' => $lists['chtml.removetags']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__CONVERT_HTMLENTITIES', 'COM_MJ__CONVERT_HTMLENTITIES_DESC'), 'input_blob' => $lists['chtml.entitydecode']))), array('COM_MJ__TEMPLATE_MODULES' => array(), 'COM_MJ__TEMPLATE_OPTIONS' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__DOCTYPE_HEAD'), 'input_blob' => $lists['chtml.doctype'])))), 'COM_MJ__ADVANCED_SETTINGS' => array(array('COM_MJ__PERFORMANCE' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__CACHING', 'COM_MJ__CACHING_DESC'), 'input_blob' => $lists['caching']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__BROWSER_CACHING', 'COM_MJ__BROWSER_CACHING_DESC'), 'input_blob' => $lists['httpcaching']), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__GZIP_COMPRESSION'), 'input_blob' => $lists['global.gzip'])), 'COM_MJ__IMAGE' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__PC_TEMPLATE_WIDTH', 'COM_MJ__PC_TEMPLATE_WIDTH_DESC', 'templatewidth'), 'input_blob' => JHtml::_('mjconfig.textinput', 'templatewidth', $MobileJoomla_Settings['templatewidth'], 5, array('style' => 'text-align:right'))), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__STYLE_IMAGE_SIZE', 'COM_MJ__STYLE_IMAGE_SIZE_DESC'), 'input_blob' => $lists['global.img_addstyles'])), 'COM_MJ__COMPATIBILITY' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__REMOVE_UNSUPPORTED_TAGS'), 'input_blob' => $lists['global.removetags']))), array('COM_MJ__EXTMANAGER' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__EXTS_MANAGER', 'COM_MJ__EXTS_MANAGER_DESC'), 'input_blob' => '<p>' . '<a class="modal button" href="index.php?option=com_mobilejoomla&extmanager=view_modules" rel="{handler:\'iframe\',size:{x:760,y:480}}">Modules</a>' . ' <span style="padding:0 2em">&nbsp;</span> ' . '<a class="modal button" href="index.php?option=com_mobilejoomla&extmanager=view_plugins" rel="{handler:\'iframe\',size:{x:760,y:480}}">Plugins</a>' . '</p>')), 'COM_MJ__DOMAIN_NAME' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__DESKTOP_URL', 'COM_MJ__DESKTOP_URL_DESC', 'desktop_url'), 'input_blob' => JHtml::_('mjconfig.textinput', 'desktop_url', $MobileJoomla_Settings['desktop_url'])), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__PAGE_FOR_PC', 'COM_MJ__PAGE_FOR_PC_DESC', 'pcpage'), 'input_blob' => JHtml::_('mjconfig.textinput', 'pcpage', $MobileJoomla_Settings['pcpage']))), 'COM_MJ__REDIRECT_TO_DOMAIN' => array(array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__XHTMLMP_DOMAIN', 'COM_MJ__DOMAIN_NAME_XHTMLMP_DESC', 'xhtml.domain'), 'input_blob' => JHtml::_('mjconfig.textinput', 'xhtml.domain', $MobileJoomla_Settings['xhtml.domain'])), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__IPHONE_DOMAIN', 'COM_MJ__DOMAIN_NAME_IPHONE_DESC', 'iphone.domain'), 'input_blob' => JHtml::_('mjconfig.textinput', 'iphone.domain', $MobileJoomla_Settings['iphone.domain'])), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__WML_DOMAIN', 'COM_MJ__DOMAIN_NAME_WML_DESC', 'wml.domain'), 'input_blob' => JHtml::_('mjconfig.textinput', 'wml.domain', $MobileJoomla_Settings['wml.domain'])), array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__CHTML_DOMAIN', 'COM_MJ__DOMAIN_NAME_CHTML_DESC', 'chtml.domain'), 'input_blob' => JHtml::_('mjconfig.textinput', 'chtml.domain', $MobileJoomla_Settings['chtml.domain']))))));
     if (count(self::$selftest_blob)) {
         array_unshift_assoc($config_blobs['COM_MJ__GENERAL_SETTINGS'][1], self::$selftest_blob, 'COM_MJ__SELFTEST_WARNINGS');
     }
     if (count($lists['dbsize'])) {
         $text = '';
         foreach ($lists['dbsize'] as $plugin) {
             $title = $plugin[0];
             if (is_int($plugin[1]) || ctype_digit($plugin[1])) {
                 $size = number_format($plugin[1] / (1024 * 1024), 2, '.', '') . ' Mb';
             } else {
                 $size = $plugin[1];
             }
             $date = isset($plugin[2]) ? '<i>' . $plugin[2] . '</i>' : '';
             $text .= "<p>{$title} {$date} &nbsp; [{$size}]</p>";
         }
     } else {
         $text = 'N/A';
     }
     $config_blobs['COM_MJ__GENERAL_SETTINGS'][1]['COM_MJ__INFORMATION'][] = array('label_blob' => JHtml::_('mjconfig.label', 'COM_MJ__DEVICE_DATABASE_SIZE'), 'input_blob' => $text);
     $tplmod_devices = array('COM_MJ__XHTMLMP_SETTINGS' => 'xhtml', 'COM_MJ__IPHONE_SETTINGS' => 'iphone', 'COM_MJ__WML_SETTINGS' => 'wml', 'COM_MJ__CHTML_SETTINGS' => 'chtml');
     $tplmod_sections = array('COM_MJ__MODULE_ABOVE_PATHWAY' => 'header', 'COM_MJ__MODULE_BETWEEN_PATHWAY_COMPONENT' => 'middle', 'COM_MJ__MODULE_BELOW_COMPONENT' => 'footer');
     //template modules
     foreach ($tplmod_devices as $device => $deviceconfig) {
         foreach ($tplmod_sections as $section => $sectionconfig) {
             for ($i = 1; $i <= 3; ++$i) {
                 $config_blobs[$device][1]['COM_MJ__TEMPLATE_MODULES'][] = array('label_blob' => JHtml::_('mjconfig.label', "{$section}_{$i}"), 'input_blob' => $lists["{$deviceconfig}.{$sectionconfig}{$i}"]);
             }
         }
     }
     $dispatcher = JDispatcher::getInstance();
     $dispatcher->trigger('onMJDisplayConfig', array(&$config_blobs, &$MobileJoomla_Settings, $lists));
     include JPATH_COMPONENT . '/admin_tpl/config_tabs.php';
 }
function saveconfig()
{
    $configfname = JPATH_ADMINISTRATOR . '/components/com_mobilejoomla/config.php';
    /** @var $MobileJoomla_Settings array */
    include $configfname;
    $settings = array('caching', 'httpcaching', 'pcpage', 'templatewidth', 'jpegquality', 'desktop_url', 'mobile_sitename', 'xhtml.template', 'xhtml.homepage', 'xhtml.gzip', 'xhtml.domain', 'xhtml.redirect', 'xhtml.buffer_width', 'wml.template', 'wml.homepage', 'wml.gzip', 'wml.domain', 'wml.redirect', 'wml.buffer_width', 'chtml.template', 'chtml.homepage', 'chtml.gzip', 'chtml.domain', 'chtml.redirect', 'chtml.buffer_width', 'iphone.template', 'iphone.homepage', 'iphone.gzip', 'iphone.domain', 'iphone.redirect', 'iphone.buffer_width', 'global.gzip', 'global.removetags', 'global.img', 'global.img_addstyles', 'global.homepage', 'global.componenthome', 'xhtml.header1', 'xhtml.header2', 'xhtml.header3', 'xhtml.middle1', 'xhtml.middle2', 'xhtml.middle3', 'xhtml.componenthome', 'xhtml.footer1', 'xhtml.footer2', 'xhtml.footer3', 'xhtml.jfooter', 'xhtml.simplehead', 'xhtml.allowextedit', 'xhtml.removetags', 'xhtml.removescripts', 'xhtml.img', 'xhtml.img_addstyles', 'xhtml.entitydecode', 'xhtml.embedcss', 'xhtml.contenttype', 'xhtml.xmlhead', 'xhtml.doctype', 'xhtml.xmlns', 'wml.header1', 'wml.header2', 'wml.header3', 'wml.middle1', 'wml.middle2', 'wml.middle3', 'wml.componenthome', 'wml.footer1', 'wml.footer2', 'wml.footer3', 'wml.cards', 'wml.jfooter', 'wml.removetags', 'wml.img', 'wml.entitydecode', 'wml.doctype', 'chtml.header1', 'chtml.header2', 'chtml.header3', 'chtml.middle1', 'chtml.middle2', 'chtml.middle3', 'chtml.componenthome', 'chtml.footer1', 'chtml.footer2', 'chtml.footer3', 'chtml.jfooter', 'chtml.removetags', 'chtml.img', 'chtml.entitydecode', 'chtml.doctype', 'iphone.header1', 'iphone.header2', 'iphone.header3', 'iphone.middle1', 'iphone.middle2', 'iphone.middle3', 'iphone.componenthome', 'iphone.footer1', 'iphone.footer2', 'iphone.footer3', 'iphone.jfooter', 'iphone.img', 'iphone.img_addstyles', 'iphone.removetags');
    $dispatcher = JDispatcher::getInstance();
    $dispatcher->trigger('onMJBeforeSave', array(&$settings, &$MobileJoomla_Settings));
    if ($_POST['mjconfig_desktop_url'] == '') {
        $_POST['mjconfig_desktop_url'] = JUri::root();
    } elseif (strpos($_POST['mjconfig_desktop_url'], '/') === false) {
        $_POST['mjconfig_desktop_url'] = 'http://' . $_POST['mjconfig_desktop_url'] . '/';
    } else {
        $desktop_url = @parse_url($_POST['mjconfig_desktop_url']);
        if (!isset($desktop_url['scheme'])) {
            $desktop_url['scheme'] = 'http';
        }
        if (!isset($desktop_url['host'])) {
            $desktop_url['host'] = $_SERVER['HTTP_HOST'];
        }
        if (isset($desktop_url['port'])) {
            $desktop_url['host'] .= ':' . $desktop_url['port'];
        }
        if (!isset($desktop_url['path'])) {
            $desktop_url['path'] = '/';
        }
        if (substr($desktop_url['path'], -1, 1) != '/') {
            $desktop_url['path'] .= '/';
        }
        $_POST['mjconfig_desktop_url'] = $desktop_url['scheme'] . '://' . $desktop_url['host'] . $desktop_url['path'];
    }
    $params = array();
    foreach ($settings as $param) {
        $post_name = 'mjconfig_' . str_replace('.', '-', $param);
        if (isset($_POST[$post_name])) {
            if (!get_magic_quotes_gpc()) {
                $_POST[$post_name] = addcslashes($_POST[$post_name], "'");
            }
            $MobileJoomla_Settings[$param] = $_POST[$post_name];
        }
        if (is_numeric($MobileJoomla_Settings[$param])) {
            $params[] = "'{$param}'=>" . $MobileJoomla_Settings[$param];
        } else {
            $params[] = "'{$param}'=>'" . $MobileJoomla_Settings[$param] . "'";
        }
    }
    $config = "<?php\n" . "defined( '_JEXEC' ) or die( 'Restricted access' );\n" . "\n" . "\$MobileJoomla_Settings=array(\n" . "'version'=>'" . HTML_mobilejoomla::getMJVersion() . "',\n" . implode(",\n", $params) . "\n" . ");\n" . "?>";
    $app = JFactory::getApplication();
    if (JFile::write($configfname, $config)) {
        $app->redirect('index.php?option=com_mobilejoomla', JText::_('COM_MJ__CONFIG_UPDATED'));
    } else {
        $app->redirect('index.php?option=com_mobilejoomla', JText::_('COM_MJ__UNABLE_OPEN_CONFIG'));
    }
}