- Patch #147324 by Eaton: make multi-site installations work again.
parent
c33da7d51c
commit
2c3864d3c7
|
@ -217,11 +217,22 @@ function timer_stop($name) {
|
||||||
* 12. $confdir/org
|
* 12. $confdir/org
|
||||||
*
|
*
|
||||||
* 13. $confdir/default
|
* 13. $confdir/default
|
||||||
|
*
|
||||||
|
* @param $require_settings
|
||||||
|
* Only configuration directories with an existing settings.php file
|
||||||
|
* will be recognized. Defaults to TRUE. During initial installation,
|
||||||
|
* this is set to FALSE so that Drupal can detect a matching directory,
|
||||||
|
* then create a new settings.php file in it.
|
||||||
|
* @param reset
|
||||||
|
* Force a full search for matching directories even if one had been
|
||||||
|
* found previously.
|
||||||
|
* @return
|
||||||
|
* The path of the matching directory.
|
||||||
*/
|
*/
|
||||||
function conf_path() {
|
function conf_path($require_settings = TRUE, $reset = FALSE) {
|
||||||
static $conf = '';
|
static $conf = '';
|
||||||
|
|
||||||
if ($conf) {
|
if ($conf && !$reset) {
|
||||||
return $conf;
|
return $conf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -231,7 +242,7 @@ function conf_path() {
|
||||||
for ($i = count($uri) - 1; $i > 0; $i--) {
|
for ($i = count($uri) - 1; $i > 0; $i--) {
|
||||||
for ($j = count($server); $j > 0; $j--) {
|
for ($j = count($server); $j > 0; $j--) {
|
||||||
$dir = implode('.', array_slice($server, -$j)) . implode('.', array_slice($uri, 0, $i));
|
$dir = implode('.', array_slice($server, -$j)) . implode('.', array_slice($uri, 0, $i));
|
||||||
if (file_exists("$confdir/$dir/settings.php")) {
|
if (file_exists("$confdir/$dir/settings.php") || (!$require_settings && file_exists("$confdir/$dir"))) {
|
||||||
$conf = "$confdir/$dir";
|
$conf = "$confdir/$dir";
|
||||||
return $conf;
|
return $conf;
|
||||||
}
|
}
|
||||||
|
|
|
@ -166,7 +166,7 @@ function drupal_detect_database_types() {
|
||||||
*/
|
*/
|
||||||
function drupal_rewrite_settings($settings = array(), $prefix = '') {
|
function drupal_rewrite_settings($settings = array(), $prefix = '') {
|
||||||
$default_settings = './sites/default/default.settings.php';
|
$default_settings = './sites/default/default.settings.php';
|
||||||
$settings_file = './'. conf_path() .'/'. $prefix .'settings.php';
|
$settings_file = './'. conf_path(FALSE, TRUE) .'/'. $prefix .'settings.php';
|
||||||
|
|
||||||
// Build list of setting names and insert the values into the global namespace.
|
// Build list of setting names and insert the values into the global namespace.
|
||||||
$keys = array();
|
$keys = array();
|
||||||
|
|
Loading…
Reference in New Issue