From 56f1f4fa56071255750a8133020dc89254061eb3 Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Mon, 04 May 2009 11:01:12 -0400 Subject: [PATCH] Fixed: FS#702 - language setting in config.inc.php does not persist during updates. --- install/tpl/config.inc.php.master | 306 +++++++++++++++++++++++++------------------------- install/lib/installer_base.lib.php | 2 install/dist/lib/fedora.lib.php | 2 install/dist/lib/opensuse.lib.php | 2 install/update.php | 1 5 files changed, 160 insertions(+), 153 deletions(-) diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php index 7830091..a67c775 100644 --- a/install/dist/lib/fedora.lib.php +++ b/install/dist/lib/fedora.lib.php @@ -554,6 +554,8 @@ $content = str_replace('{mysql_master_server_host}', $conf['mysql']['master_host'], $content); $content = str_replace('{ispconfig_log_priority}', $conf['ispconfig_log_priority'], $content); + $content = str_replace('{language}', $conf['language'], $content); + wf("$install_dir/interface/lib/$configfile", $content); //* Create the config file for ISPConfig server diff --git a/install/dist/lib/opensuse.lib.php b/install/dist/lib/opensuse.lib.php index 369168e..a2fe5a6 100644 --- a/install/dist/lib/opensuse.lib.php +++ b/install/dist/lib/opensuse.lib.php @@ -577,6 +577,8 @@ $content = str_replace('{mysql_master_server_host}', $conf['mysql']['master_host'], $content); $content = str_replace('{ispconfig_log_priority}', $conf['ispconfig_log_priority'], $content); + $content = str_replace('{language}', $conf['language'], $content); + wf("$install_dir/interface/lib/$configfile", $content); //* Create the config file for ISPConfig server diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index eb5705a..62cd21e 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -857,6 +857,8 @@ $content = str_replace('{mysql_master_server_host}', $conf['mysql']['master_host'], $content); $content = str_replace('{ispconfig_log_priority}', $conf['ispconfig_log_priority'], $content); + $content = str_replace('{language}', $conf['language'], $content); + wf("$install_dir/interface/lib/$configfile", $content); //* Create the config file for ISPConfig server diff --git a/install/tpl/config.inc.php.master b/install/tpl/config.inc.php.master index 36d12a2..a0f978c 100644 --- a/install/tpl/config.inc.php.master +++ b/install/tpl/config.inc.php.master @@ -1,153 +1,153 @@ -<?php - -/* -Copyright (c) 2007 - 2009, Till Brehm, projektfarm Gmbh -All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of ISPConfig nor the names of its contributors - may be used to endorse or promote products derived from this software without - specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY -OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, -EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ - -//** Web-only -if( !empty($_SERVER['DOCUMENT_ROOT']) ) { - - Header("Pragma: no-cache"); - Header("Cache-Control: no-store, no-cache, max-age=0, must-revalidate"); - Header("Content-Type: text/html; charset=utf-8"); - - //** Set a few php.ini values - ini_set('register_globals',0); - ini_set('magic_quotes_gpc', 0); - - if (isset($_REQUEST['GLOBALS']) || isset($_FILES['GLOBALS']) || isset($_REQUEST['s']) || isset($_REQUEST['s_old']) || isset($_REQUEST['conf'])) { - die('Internal Error: var override attempt detected'); - exit; - } -} - -//** Set a few php.ini values -set_magic_quotes_runtime(0); -if(isset($app)) unset($app); -if(isset($conf)) unset($conf); - - -//** SVN Revision -$svn_revision = '$Revision$'; -$revision = str_replace(array('Revision:','$',' '), '', $svn_revision); - -//** Application -define('ISPC_APP_TITLE', 'ISPConfig'); -define('ISPC_APP_VERSION', '3.0.1'); - - -//** Database -$conf["db_type"] = 'mysql'; -$conf["db_host"] = '{mysql_server_host}'; -$conf["db_database"] = '{mysql_server_database}'; -$conf["db_user"] = '{mysql_server_ispconfig_user}'; -$conf["db_password"] = '{mysql_server_ispconfig_password}'; -$conf["db_charset"] = 'utf8'; // same charset as html-charset - (HTML --> MYSQL: "utf-8" --> "utf8", "iso-8859-1" --> "latin1") - -define("DB_TYPE",$conf["db_type"]); -define("DB_HOST",$conf["db_host"]); -define("DB_DATABASE",$conf["db_database"]); -define("DB_USER",$conf["db_user"]); -define("DB_PASSWORD",$conf["db_password"]); -define("DB_CHARSET",$conf["db_charset"]); - - -//** Database settings for the master DB. This setting is only used in multiserver setups -$conf["dbmaster_type"] = 'mysql'; -$conf["dbmaster_host"] = '{mysql_master_server_host}'; -$conf["dbmaster_database"] = '{mysql_master_server_database}'; -$conf["dbmaster_user"] = '{mysql_master_server_ispconfig_user}'; -$conf["dbmaster_password"] = '{mysql_master_server_ispconfig_password}'; - - -//** Paths -define('ISPC_ROOT_PATH', realpath(dirname(__FILE__).'/../')); // The main ROOT is the parent directory to this file, ie Interface/. NO trailing slashes. -define('ISPC_LIB_PATH', ISPC_ROOT_PATH.'/lib'); -define('ISPC_CLASS_PATH', ISPC_ROOT_PATH.'/lib/classes'); -define('ISPC_WEB_PATH', ISPC_ROOT_PATH.'/web'); -define('ISPC_THEMES_PATH', ISPC_ROOT_PATH.'/web/themes'); -define('ISPC_WEB_TEMP_PATH', ISPC_WEB_PATH.'/temp'); // Path for downloads, accessible via browser -define('ISPC_CACHE_PATH', ISPC_ROOT_PATH.'/cache'); - -//** Paths (Do not change!) -$conf["rootpath"] = substr(dirname(__FILE__),0,-4); -$conf["fs_div"] = "/"; // File system divider, "\\" on windows and "/"" on linux and unix -$conf["classpath"] = $conf["rootpath"].$conf["fs_div"]."lib".$conf["fs_div"]."classes"; -$conf["temppath"] = $conf["rootpath"].$conf["fs_div"]."temp"; - -define("FS_DIV",$conf["fs_div"]); -define("SERVER_ROOT",$conf["rootpath"]); -define("INCLUDE_ROOT",SERVER_ROOT.FS_DIV."lib"); -define("CLASSES_ROOT",INCLUDE_ROOT.FS_DIV."classes"); - - -//** Server -$conf['app_title'] = ISPC_APP_TITLE; -$conf['app_version'] = ISPC_APP_VERSION; -$conf['app_link'] = 'http://www.ispconfig.org/'; -$conf['modules_available'] = 'admin,mail,sites,monitor,client,dns,help'; -$conf["server_id"] = "{server_id}"; - - -//** Interface -define('ISPC_INTERFACE_MODULES_ENABLED', 'mail,sites,dns,tools'); - - -//** Logging -$conf["log_file"] = '/var/log/ispconfig/ispconfig.log'; -$conf["log_priority"] = {ispconfig_log_priority}; // 0 = Debug, 1 = Warning, 2 = Error - - -//** Allow software package installations -$conf['software_updates_enabled'] = false; - - -//** Themes -$conf["theme"] = 'default'; -$conf["html_content_encoding"] = 'utf-8'; // example: utf-8, iso-8859-1, ... -$conf["logo"] = 'themes/default/images/ispc_logo.png'; - - -//** Default Language -$conf["language"] = 'en'; - - -//** Misc. -$conf["interface_logout_url"] = ""; // example: http://www.domain.tld/ - - -//** Auto Load Modules -$conf["start_db"] = true; -$conf["start_session"] = true; - - -//** Constants -define("LOGLEVEL_DEBUG",0); -define("LOGLEVEL_WARN",1); -define("LOGLEVEL_ERROR",2); - -?> +<?php + +/* +Copyright (c) 2007 - 2009, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +//** Web-only +if( !empty($_SERVER['DOCUMENT_ROOT']) ) { + + Header("Pragma: no-cache"); + Header("Cache-Control: no-store, no-cache, max-age=0, must-revalidate"); + Header("Content-Type: text/html; charset=utf-8"); + + //** Set a few php.ini values + ini_set('register_globals',0); + ini_set('magic_quotes_gpc', 0); + + if (isset($_REQUEST['GLOBALS']) || isset($_FILES['GLOBALS']) || isset($_REQUEST['s']) || isset($_REQUEST['s_old']) || isset($_REQUEST['conf'])) { + die('Internal Error: var override attempt detected'); + exit; + } +} + +//** Set a few php.ini values +set_magic_quotes_runtime(0); +if(isset($app)) unset($app); +if(isset($conf)) unset($conf); + + +//** SVN Revision +$svn_revision = '$Revision$'; +$revision = str_replace(array('Revision:','$',' '), '', $svn_revision); + +//** Application +define('ISPC_APP_TITLE', 'ISPConfig'); +define('ISPC_APP_VERSION', '3.0.1'); + + +//** Database +$conf["db_type"] = 'mysql'; +$conf["db_host"] = '{mysql_server_host}'; +$conf["db_database"] = '{mysql_server_database}'; +$conf["db_user"] = '{mysql_server_ispconfig_user}'; +$conf["db_password"] = '{mysql_server_ispconfig_password}'; +$conf["db_charset"] = 'utf8'; // same charset as html-charset - (HTML --> MYSQL: "utf-8" --> "utf8", "iso-8859-1" --> "latin1") + +define("DB_TYPE",$conf["db_type"]); +define("DB_HOST",$conf["db_host"]); +define("DB_DATABASE",$conf["db_database"]); +define("DB_USER",$conf["db_user"]); +define("DB_PASSWORD",$conf["db_password"]); +define("DB_CHARSET",$conf["db_charset"]); + + +//** Database settings for the master DB. This setting is only used in multiserver setups +$conf["dbmaster_type"] = 'mysql'; +$conf["dbmaster_host"] = '{mysql_master_server_host}'; +$conf["dbmaster_database"] = '{mysql_master_server_database}'; +$conf["dbmaster_user"] = '{mysql_master_server_ispconfig_user}'; +$conf["dbmaster_password"] = '{mysql_master_server_ispconfig_password}'; + + +//** Paths +define('ISPC_ROOT_PATH', realpath(dirname(__FILE__).'/../')); // The main ROOT is the parent directory to this file, ie Interface/. NO trailing slashes. +define('ISPC_LIB_PATH', ISPC_ROOT_PATH.'/lib'); +define('ISPC_CLASS_PATH', ISPC_ROOT_PATH.'/lib/classes'); +define('ISPC_WEB_PATH', ISPC_ROOT_PATH.'/web'); +define('ISPC_THEMES_PATH', ISPC_ROOT_PATH.'/web/themes'); +define('ISPC_WEB_TEMP_PATH', ISPC_WEB_PATH.'/temp'); // Path for downloads, accessible via browser +define('ISPC_CACHE_PATH', ISPC_ROOT_PATH.'/cache'); + +//** Paths (Do not change!) +$conf["rootpath"] = substr(dirname(__FILE__),0,-4); +$conf["fs_div"] = "/"; // File system divider, "\\" on windows and "/"" on linux and unix +$conf["classpath"] = $conf["rootpath"].$conf["fs_div"]."lib".$conf["fs_div"]."classes"; +$conf["temppath"] = $conf["rootpath"].$conf["fs_div"]."temp"; + +define("FS_DIV",$conf["fs_div"]); +define("SERVER_ROOT",$conf["rootpath"]); +define("INCLUDE_ROOT",SERVER_ROOT.FS_DIV."lib"); +define("CLASSES_ROOT",INCLUDE_ROOT.FS_DIV."classes"); + + +//** Server +$conf['app_title'] = ISPC_APP_TITLE; +$conf['app_version'] = ISPC_APP_VERSION; +$conf['app_link'] = 'http://www.ispconfig.org/'; +$conf['modules_available'] = 'admin,mail,sites,monitor,client,dns,help'; +$conf["server_id"] = "{server_id}"; + + +//** Interface +define('ISPC_INTERFACE_MODULES_ENABLED', 'mail,sites,dns,tools'); + + +//** Logging +$conf["log_file"] = '/var/log/ispconfig/ispconfig.log'; +$conf["log_priority"] = {ispconfig_log_priority}; // 0 = Debug, 1 = Warning, 2 = Error + + +//** Allow software package installations +$conf['software_updates_enabled'] = false; + + +//** Themes +$conf["theme"] = 'default'; +$conf["html_content_encoding"] = 'utf-8'; // example: utf-8, iso-8859-1, ... +$conf["logo"] = 'themes/default/images/ispc_logo.png'; + + +//** Default Language +$conf["language"] = '{language}'; + + +//** Misc. +$conf["interface_logout_url"] = ""; // example: http://www.domain.tld/ + + +//** Auto Load Modules +$conf["start_db"] = true; +$conf["start_session"] = true; + + +//** Constants +define("LOGLEVEL_DEBUG",0); +define("LOGLEVEL_WARN",1); +define("LOGLEVEL_ERROR",2); + +?> diff --git a/install/update.php b/install/update.php index d72b8f9..bda5bf7 100644 --- a/install/update.php +++ b/install/update.php @@ -88,6 +88,7 @@ $conf['mysql']['charset'] = 'utf8'; $conf["mysql"]["ispconfig_user"] = $conf_old["db_user"]; $conf["mysql"]["ispconfig_password"] = $conf_old["db_password"]; +$conf['language'] = $conf_old['language']; if(isset($conf_old["dbmaster_host"])) $conf["mysql"]["master_host"] = $conf_old["dbmaster_host"]; if(isset($conf_old["dbmaster_database"])) $conf["mysql"]["master_database"] = $conf_old["dbmaster_database"]; -- Gitblit v1.9.1