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"> </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} [{$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')); } }