diff --git a/install.php b/install.php
index b186151..409dcc6 100644
--- a/install.php
+++ b/install.php
@@ -70,42 +70,49 @@ if(isset($_SERVER['HTTP_USER_AGENT'])) {
// Register the SilverStripe provided databases
DatabaseAdapterRegistry::register(
- 'MySQLDatabase',
- 'MySQL 4.1+',
- 'sapphire/dev/install/MySQLDatabaseConfigurationHelper.php',
- function_exists('mysql_connect')
+ array(
+ 'class' => 'MySQLDatabase',
+ 'title' => 'MySQL 4.1+',
+ 'helperPath' => 'sapphire/dev/install/MySQLDatabaseConfigurationHelper.php',
+ 'supported' => function_exists('mysql_connect')
+ )
);
DatabaseAdapterRegistry::register(
- 'MSSQLDatabase',
- 'SQL Server 2008',
- 'mssql/code/MSSQLDatabaseConfigurationHelper.php',
- function_exists('mssql_connect') || function_exists('sqlsrv_connect'),
- null,
- 'Neither the mssql or sqlsrv PHP extensions are available. Please install or enable one of them and refresh this page.'
+ array(
+ 'class' => 'MSSQLDatabase',
+ 'title' => 'SQL Server 2008',
+ 'helperPath' => 'mssql/code/MSSQLDatabaseConfigurationHelper.php',
+ 'supported' => (function_exists('mssql_connect') || function_exists('sqlsrv_connect')),
+ 'missingExtensionText' => 'Neither the mssql or sqlsrv PHP extensions are available. Please install or enable one of them and refresh this page.'
+ )
);
DatabaseAdapterRegistry::register(
- 'PostgreSQLDatabase',
- 'PostgreSQL 8.3+',
- 'postgresql/code/PostgreSQLDatabaseConfigurationHelper.php',
- function_exists('pg_query'),
- null,
- 'The pgsql PHP extension is not available. Please install or enable it and refresh this page.'
+ array(
+ 'class' => 'PostgreSQLDatabase',
+ 'title' => 'PostgreSQL 8.3+',
+ 'helperPath' => 'postgresql/code/PostgreSQLDatabaseConfigurationHelper.php',
+ 'supported' => function_exists('pg_query'),
+ 'missingExtensionText' => 'The pgsql PHP extension is not available. Please install or enable it and refresh this page.'
+ )
);
+
DatabaseAdapterRegistry::register(
- 'SQLite3Database',
- 'SQLite 3.3+',
- 'sqlite3/code/SQLiteDatabaseConfigurationHelper.php',
- class_exists('SQLite3') || class_exists('PDO'),
- null,
- 'The SQLite3 and PDO classes are not available. Please install or enable them and refresh this page.');
+ array(
+ 'class' => 'SQLite3Database',
+ 'title' => 'SQLite 3.3+',
+ 'helperPath' => 'sqlite3/code/SQLiteDatabaseConfigurationHelper.php',
+ 'supported' => (class_exists('SQLite3') || class_exists('PDO')),
+ 'missingExtensionText' => 'The SQLite3 and PDO classes are not available. Please install or enable them and refresh this page.'
+ )
+);
// Discover any 3rd party ones
DatabaseAdapterRegistry::autodiscover();
// Determine which external database modules are USABLE
-foreach(DatabaseAdapterRegistry::adapters() as $class => $details) {
+foreach(DatabaseAdapterRegistry::get_adapters() as $class => $details) {
$databaseClasses[$class] = $details;
if(file_exists($details['helperPath'])) {
$databaseClasses[$class]['hasModule'] = true;
@@ -638,7 +645,7 @@ class InstallRequirements {
* @param string $databaseClass e.g. MySQLDatabase or MSSQLDatabase
*/
function getDatabaseConfigurationHelper($databaseClass) {
- $adapters = DatabaseAdapterRegistry::adapters();
+ $adapters = DatabaseAdapterRegistry::get_adapters();
if(isset($adapters[$databaseClass])) {
$helperPath = $adapters[$databaseClass]['helperPath'];
$class = str_replace('.php', '', basename($helperPath));