thomascube
2008-09-19 bba657e64ff3334ba2f64e88e977a6dc107d682d
Made config files location configurable (#1485215)

8 files modified
30 ■■■■■ changed files
CHANGELOG 4 ●●●● patch | view | raw | blame | history
installer/config.php 2 ●●● patch | view | raw | blame | history
installer/index.php 4 ●●● patch | view | raw | blame | history
installer/rcube_install.php 4 ●●●● patch | view | raw | blame | history
installer/test.php 4 ●●●● patch | view | raw | blame | history
program/include/iniset.php 2 ●●●●● patch | view | raw | blame | history
program/include/rcmail.php 2 ●●● patch | view | raw | blame | history
program/include/rcube_config.php 8 ●●●● patch | view | raw | blame | history
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)
installer/config.php
@@ -24,7 +24,7 @@
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"));
installer/index.php
@@ -3,6 +3,8 @@
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 ($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;
  }
installer/rcube_install.php
@@ -79,12 +79,12 @@
   */
  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;
    }
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');
program/include/iniset.php
@@ -30,6 +30,8 @@
  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) ? ';' : ':'));
program/include/rcmail.php
@@ -460,7 +460,7 @@
      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);
    }
program/include/rcube_config.php
@@ -51,13 +51,13 @@
    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 @@
      $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);
    }
  }