mirror of
https://github.com/silverstripe/silverstripe-installer
synced 2024-09-30 05:09:10 +02:00
MINOR Fixed install.php to accept "typed" database configuration (see r101054) (from r101063)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/phpinstaller/trunk@112211 467b73ca-7a2a-4603-9d3b-597d59a354a9
This commit is contained in:
parent
dd1af76763
commit
c5dc242b94
32
install.php
32
install.php
@ -84,21 +84,23 @@ foreach(DatabaseAdapterRegistry::get_adapters() as $class => $details) {
|
|||||||
|
|
||||||
// Load database config
|
// Load database config
|
||||||
if(isset($_REQUEST['db'])) {
|
if(isset($_REQUEST['db'])) {
|
||||||
|
$type = (isset($_REQUEST['db']['type'])) ? $_REQUEST['db']['type'] : "MySQLDatabase";
|
||||||
// Disabled inputs don't submit anything - we need to use the environment (except the database name)
|
// Disabled inputs don't submit anything - we need to use the environment (except the database name)
|
||||||
if($usingEnv) {
|
if($usingEnv) {
|
||||||
$_REQUEST['db'] = $databaseConfig = array(
|
$_REQUEST['db'][$type] = $databaseConfig = array(
|
||||||
"type" => defined('SS_DATABASE_CLASS') ? SS_DATABASE_CLASS : "MySQLDatabase",
|
"type" => defined('SS_DATABASE_CLASS') ? SS_DATABASE_CLASS : $type,
|
||||||
"server" => defined('SS_DATABASE_SERVER') ? SS_DATABASE_SERVER : "localhost",
|
"server" => defined('SS_DATABASE_SERVER') ? SS_DATABASE_SERVER : "localhost",
|
||||||
"username" => defined('SS_DATABASE_USERNAME') ? SS_DATABASE_USERNAME : "root",
|
"username" => defined('SS_DATABASE_USERNAME') ? SS_DATABASE_USERNAME : "root",
|
||||||
"password" => defined('SS_DATABASE_PASSWORD') ? SS_DATABASE_PASSWORD : "",
|
"password" => defined('SS_DATABASE_PASSWORD') ? SS_DATABASE_PASSWORD : "",
|
||||||
"database" => $_REQUEST['db']['database'],
|
"database" => $_REQUEST['db'][$type]['database'],
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
// Normal behaviour without the environment
|
// Normal behaviour without the environment
|
||||||
$databaseConfig = $_REQUEST['db'];
|
$databaseConfig = $_REQUEST['db'][$type];
|
||||||
|
$databaseConfig['type'] = $type;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$_REQUEST['db'] = $databaseConfig = array(
|
$_REQUEST['db'][$type] = $databaseConfig = array(
|
||||||
"type" => defined('SS_DATABASE_CLASS') ? SS_DATABASE_CLASS : "MySQLDatabase",
|
"type" => defined('SS_DATABASE_CLASS') ? SS_DATABASE_CLASS : "MySQLDatabase",
|
||||||
"server" => defined('SS_DATABASE_SERVER') ? SS_DATABASE_SERVER : "localhost",
|
"server" => defined('SS_DATABASE_SERVER') ? SS_DATABASE_SERVER : "localhost",
|
||||||
"username" => defined('SS_DATABASE_USERNAME') ? SS_DATABASE_USERNAME : "root",
|
"username" => defined('SS_DATABASE_USERNAME') ? SS_DATABASE_USERNAME : "root",
|
||||||
@ -806,12 +808,13 @@ class Installer extends InstallRequirements {
|
|||||||
|
|
||||||
$phpVersion = urlencode(phpversion());
|
$phpVersion = urlencode(phpversion());
|
||||||
$encWebserver = urlencode($webserver);
|
$encWebserver = urlencode($webserver);
|
||||||
|
$type = $config['db']['type'];
|
||||||
|
|
||||||
if($config['db']['type'] == 'MySQLDatabase') {
|
if($type == 'MySQLDatabase') {
|
||||||
$conn = @mysql_connect($config['db']['server'], null, null);
|
$conn = @mysql_connect($config['db'][$type]['server'], null, null);
|
||||||
$databaseVersion = urlencode('MySQLDatabase: ' . mysql_get_server_info());
|
$databaseVersion = urlencode('MySQLDatabase: ' . mysql_get_server_info());
|
||||||
} else {
|
} else {
|
||||||
$databaseVersion = $config['db']['type'];
|
$databaseVersion = $type;
|
||||||
}
|
}
|
||||||
|
|
||||||
$url = "http://ss2stat.silverstripe.com/Installation/add?SilverStripe=$silverstripe_version&PHP=$phpVersion&Database=$databaseVersion&WebServer=$encWebserver";
|
$url = "http://ss2stat.silverstripe.com/Installation/add?SilverStripe=$silverstripe_version&PHP=$phpVersion&Database=$databaseVersion&WebServer=$encWebserver";
|
||||||
@ -842,7 +845,7 @@ global \$project;
|
|||||||
\$project = 'mysite';
|
\$project = 'mysite';
|
||||||
|
|
||||||
global \$database;
|
global \$database;
|
||||||
\$database = '{$config['db']['database']}';
|
\$database = '{$config['db'][$type]['database']}';
|
||||||
|
|
||||||
require_once('conf/ConfigureFromEnv.php');
|
require_once('conf/ConfigureFromEnv.php');
|
||||||
|
|
||||||
@ -866,7 +869,7 @@ PHP
|
|||||||
|
|
||||||
$devServers = $this->var_export_array_nokeys(explode("\n", $_POST['devsites']));
|
$devServers = $this->var_export_array_nokeys(explode("\n", $_POST['devsites']));
|
||||||
|
|
||||||
$escapedPassword = addslashes($config['db']['password']);
|
$escapedPassword = addslashes($config['db'][$type]['password']);
|
||||||
$this->writeToFile("mysite/_config.php", <<<PHP
|
$this->writeToFile("mysite/_config.php", <<<PHP
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@ -875,11 +878,12 @@ global \$project;
|
|||||||
|
|
||||||
global \$databaseConfig;
|
global \$databaseConfig;
|
||||||
\$databaseConfig = array(
|
\$databaseConfig = array(
|
||||||
"type" => '{$config['db']['type']}',
|
"type" => '{$type}',
|
||||||
"server" => '{$config['db']['server']}',
|
"server" => '{$config['db'][$type]['server']}',
|
||||||
"username" => '{$config['db']['username']}',
|
"username" => '{$config['db'][$type]['username']}',
|
||||||
"password" => '{$escapedPassword}',
|
"password" => '{$escapedPassword}',
|
||||||
"database" => '{$config['db']['database']}',
|
"database" => '{$config['db'][$type]['database']}',
|
||||||
|
"path" => '{$config['db'][$type]['path']}',
|
||||||
);
|
);
|
||||||
|
|
||||||
// Sites running on the following servers will be
|
// Sites running on the following servers will be
|
||||||
|
Loading…
Reference in New Issue
Block a user