summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG4
-rw-r--r--installer/config.php2
-rw-r--r--installer/index.php4
-rw-r--r--installer/rcube_install.php4
-rw-r--r--installer/test.php4
-rwxr-xr-xprogram/include/iniset.php2
-rw-r--r--program/include/rcmail.php2
-rw-r--r--program/include/rcube_config.php8
8 files changed, 19 insertions, 11 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 35bda9716..9137398ca 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,10 @@
CHANGELOG RoundCube Webmail
---------------------------
+2008/09/19 (thomasb)
+----------
+- Made config files location configurable (#1485215)
+
2008/09/16 (alec)
----------
- Reduced memory footprint when forwarding attachments (#1485345)
diff --git a/installer/config.php b/installer/config.php
index 12af1c660..53a4655ed 100644
--- a/installer/config.php
+++ b/installer/config.php
@@ -24,7 +24,7 @@ $_SESSION['allowinstaller'] = true;
if (!empty($_POST['submit'])) {
echo '<p class="notice">Copy or download the following configurations and save them in two files';
- echo ' (names above the text box) within the <tt>config/</tt> directory of your RoundCube installation.<br/>';
+ echo ' (names above the text box) within the <tt>'.RCMAIL_CONFIG_DIR.'</tt> directory of your RoundCube installation.<br/>';
echo ' Make sure that there are no characters outside the <tt>&lt;?php ?&gt;</tt> brackets when saving the files.</p>';
$textbox = new html_textarea(array('rows' => 16, 'cols' => 60, 'class' => "configfile"));
diff --git a/installer/index.php b/installer/index.php
index 4d0e6c448..ff31667f9 100644
--- a/installer/index.php
+++ b/installer/index.php
@@ -3,6 +3,8 @@ ini_set('error_reporting', E_ALL&~E_NOTICE);
ini_set('display_errors', 1);
define('INSTALL_PATH', realpath(dirname(__FILE__) . '/../').'/');
+define('RCMAIL_CONFIG_DIR', INSTALL_PATH . 'config');
+
$include_path = INSTALL_PATH . 'program/lib' . PATH_SEPARATOR;
$include_path .= INSTALL_PATH . 'program' . PATH_SEPARATOR;
$include_path .= INSTALL_PATH . 'program/include' . PATH_SEPARATOR;
@@ -68,7 +70,7 @@ if (isset($_GET['_getfile']) && in_array($_GET['_getfile'], array('main', 'db'))
if ($RCI->configured && !$RCI->getprop('enable_installer') && !$_SESSION['allowinstaller']) {
// header("HTTP/1.0 404 Not Found");
echo '<h2 class="error">The installer is disabled!</h2>';
- echo '<p>To enable it again, set <tt>$rcmail_config[\'enable_installer\'] = true;</tt> in config/main.inc.php</p>';
+ echo '<p>To enable it again, set <tt>$rcmail_config[\'enable_installer\'] = true;</tt> in '.RCMAIL_CONFIG_DIR.'/main.inc.php</p>';
echo '</div></body></html>';
exit;
}
diff --git a/installer/rcube_install.php b/installer/rcube_install.php
index 0c4544f5b..e528cfc1f 100644
--- a/installer/rcube_install.php
+++ b/installer/rcube_install.php
@@ -79,12 +79,12 @@ class rcube_install
*/
function _load_config($suffix)
{
- @include '../config/main.inc' . $suffix;
+ @include RCMAIL_CONFIG_DIR . '/main.inc' . $suffix;
if (is_array($rcmail_config)) {
$this->config += $rcmail_config;
}
- @include '../config/db.inc'. $suffix;
+ @include RCMAIL_CONFIG_DIR . '/db.inc'. $suffix;
if (is_array($rcmail_config)) {
$this->config += $rcmail_config;
}
diff --git a/installer/test.php b/installer/test.php
index 0edfcc904..ca7c7add4 100644
--- a/installer/test.php
+++ b/installer/test.php
@@ -3,8 +3,8 @@
<h3>Check config files</h3>
<?php
-$read_main = is_readable(INSTALL_PATH.'config/main.inc.php');
-$read_db = is_readable(INSTALL_PATH.'config/db.inc.php');
+$read_main = is_readable(RCMAIL_CONFIG_DIR.'/main.inc.php');
+$read_db = is_readable(RCMAIL_CONFIG_DIR.'/db.inc.php');
if ($read_main && !empty($RCI->config)) {
$RCI->pass('main.inc.php');
diff --git a/program/include/iniset.php b/program/include/iniset.php
index 5dacf8552..20fe27996 100755
--- a/program/include/iniset.php
+++ b/program/include/iniset.php
@@ -30,6 +30,8 @@ if (!defined('INSTALL_PATH')) {
define('INSTALL_PATH', dirname($_SERVER['SCRIPT_FILENAME']).'/');
}
+define('RCMAIL_CONFIG_DIR', INSTALL_PATH . 'config');
+
// make sure path_separator is defined
if (!defined('PATH_SEPARATOR')) {
define('PATH_SEPARATOR', (eregi('win', PHP_OS) ? ';' : ':'));
diff --git a/program/include/rcmail.php b/program/include/rcmail.php
index ac328ebb7..12270f077 100644
--- a/program/include/rcmail.php
+++ b/program/include/rcmail.php
@@ -460,7 +460,7 @@ class rcmail
raise_error(array(
'code' => 600,
'type' => 'php',
- 'file' => "config/main.inc.php",
+ 'file' => RCMAIL_CONFIG_DIR."/main.inc.php",
'message' => "Acces denied for new user $username. 'auto_create_user' is disabled"
), true, false);
}
diff --git a/program/include/rcube_config.php b/program/include/rcube_config.php
index 98e688d02..c3b0c1832 100644
--- a/program/include/rcube_config.php
+++ b/program/include/rcube_config.php
@@ -51,13 +51,13 @@ class rcube_config
ob_start();
// load main config file
- if (include(INSTALL_PATH . 'config/main.inc.php'))
+ if (include(RCMAIL_CONFIG_DIR . '/main.inc.php'))
$this->prop = (array)$rcmail_config;
else
$this->errors[] = 'main.inc.php was not found.';
// load database config
- if (include(INSTALL_PATH . 'config/db.inc.php'))
+ if (include(RCMAIL_CONFIG_DIR . '/db.inc.php'))
$this->prop += (array)$rcmail_config;
else
$this->errors[] = 'db.inc.php was not found.';
@@ -119,8 +119,8 @@ class rcube_config
$fname = preg_replace('/[^a-z0-9\.\-_]/i', '', $_SERVER['HTTP_HOST']) . '.inc.php';
}
- if ($fname && is_file(INSTALL_PATH . 'config/' . $fname)) {
- include(INSTALL_PATH . 'config/' . $fname);
+ if ($fname && is_file(RCMAIL_CONFIG_DIR . '/' . $fname)) {
+ include(RCMAIL_CONFIG_DIR . '/' . $fname);
$this->prop = array_merge($this->prop, (array)$rcmail_config);
}
}