diff options
| author | thomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2006-06-25 09:18:00 +0000 |
|---|---|---|
| committer | thomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2006-06-25 09:18:00 +0000 |
| commit | a79b88a7ac4707b8f3284a0e519b715072127468 (patch) | |
| tree | 03f998df10de86ba93284f7cbd3118e0d0ffed09 | |
| parent | 95850713f5d8ca00bd0307a1bf982fc73df2bc63 (diff) | |
Changed behavior to include host-specific configuration (Bug #1483849)
git-svn-id: https://svn.roundcube.net/trunk@263 208e9e7b-5314-0410-a742-e7e81cd9613c
| -rw-r--r-- | roundcubemail/config/main.inc.php.dist | 7 | ||||
| -rw-r--r-- | roundcubemail/program/include/main.inc | 22 |
2 files changed, 25 insertions, 4 deletions
diff --git a/roundcubemail/config/main.inc.php.dist b/roundcubemail/config/main.inc.php.dist index 9c72bbe86..dda852c48 100644 --- a/roundcubemail/config/main.inc.php.dist +++ b/roundcubemail/config/main.inc.php.dist @@ -173,6 +173,9 @@ $rcmail_config['mail_header_delimiter'] = NULL; * 'fuzzy_search' => 0); */ +// try to load host-specific configuration +$rcmail_config['include_host_config'] = FALSE; + /***** these settings can be overwritten by user's preferences *****/ @@ -200,10 +203,6 @@ $rcmail_config['message_sort_order'] = 'DESC'; // list of configuration option names that need to be available in Javascript. $rcmail_config['javascript_config'] = array('read_when_deleted', 'flag_for_deletion'); -/***** try to load host-specific configuration *****/ - -@include($_SERVER['HTTP_HOST'].'.inc.php'); - // end of config file ?> diff --git a/roundcubemail/program/include/main.inc b/roundcubemail/program/include/main.inc index b68a0c2a0..c5370b144 100644 --- a/roundcubemail/program/include/main.inc +++ b/roundcubemail/program/include/main.inc @@ -42,6 +42,10 @@ function rcmail_startup($task='mail') // load config file include_once('config/main.inc.php'); $CONFIG = is_array($rcmail_config) ? $rcmail_config : array(); + + // load host-specific configuration + rcmail_load_host_config(&$CONFIG); + $CONFIG['skin_path'] = $CONFIG['skin_path'] ? preg_replace('/\/$/', '', $CONFIG['skin_path']) : 'skins/default'; // load db conf @@ -126,6 +130,24 @@ function rcmail_startup($task='mail') register_shutdown_function('rcmail_shutdown'); } + + +// load a host-specific config file if configured +function rcmail_load_host_config(&$config) + { + $fname = NULL; + + if (is_array($config['include_host_config'])) + $fname = $config['include_host_config'][$_SERVER['HTTP_HOST']]; + else if (!empty($config['include_host_config'])) + $fname = preg_replace('/[^a-z0-9\.\-_]/i', '', $_SERVER['HTTP_HOST']) . '.inc.php'; + + if ($fname && is_file('config/'.$fname)) + { + include('config/'.$fname); + $config = array_merge($config, $rcmail_config); + } + } // create authorization hash |
