Index: trunk/phase3/includes/db/DatabaseMysql.php |
— | — | @@ -362,7 +362,7 @@ |
363 | 363 | return 'LOW_PRIORITY'; |
364 | 364 | } |
365 | 365 | |
366 | | - function getSoftwareLink() { |
| 366 | + public static function getSoftwareLink() { |
367 | 367 | return '[http://www.mysql.com/ MySQL]'; |
368 | 368 | } |
369 | 369 | |
Index: trunk/phase3/includes/db/DatabaseOracle.php |
— | — | @@ -817,7 +817,7 @@ |
818 | 818 | /** |
819 | 819 | * @return string wikitext of a link to the server software's web site |
820 | 820 | */ |
821 | | - function getSoftwareLink() { |
| 821 | + public static function getSoftwareLink() { |
822 | 822 | return '[http://www.oracle.com/ Oracle]'; |
823 | 823 | } |
824 | 824 | |
Index: trunk/phase3/includes/db/DatabasePostgres.php |
— | — | @@ -1143,7 +1143,7 @@ |
1144 | 1144 | /** |
1145 | 1145 | * @return string wikitext of a link to the server software's web site |
1146 | 1146 | */ |
1147 | | - function getSoftwareLink() { |
| 1147 | + public static function getSoftwareLink() { |
1148 | 1148 | return "[http://www.postgresql.org/ PostgreSQL]"; |
1149 | 1149 | } |
1150 | 1150 | |
Index: trunk/phase3/includes/db/DatabaseIbm_db2.php |
— | — | @@ -1436,7 +1436,7 @@ |
1437 | 1437 | * Returns link to IBM DB2 free download |
1438 | 1438 | * @return string wikitext of a link to the server software's web site |
1439 | 1439 | */ |
1440 | | - public function getSoftwareLink() { |
| 1440 | + public static function getSoftwareLink() { |
1441 | 1441 | return "[http://www.ibm.com/software/data/db2/express/?s_cmp=ECDDWW01&s_tact=MediaWiki IBM DB2]"; |
1442 | 1442 | } |
1443 | 1443 | |
Index: trunk/phase3/includes/db/Database.php |
— | — | @@ -2077,7 +2077,9 @@ |
2078 | 2078 | * |
2079 | 2079 | * @return String: wikitext of a link to the server software's web site |
2080 | 2080 | */ |
2081 | | - abstract function getSoftwareLink(); |
| 2081 | + static function getSoftwareLink() { |
| 2082 | + throw new MWException( "A child class of DatabaseBase didn't implement getSoftwareLink(), shame on them" ); |
| 2083 | + } |
2082 | 2084 | |
2083 | 2085 | /** |
2084 | 2086 | * A string describing the current software version, like from |
Index: trunk/phase3/includes/db/DatabaseMssql.php |
— | — | @@ -731,7 +731,7 @@ |
732 | 732 | /** |
733 | 733 | * @return string wikitext of a link to the server software's web site |
734 | 734 | */ |
735 | | - function getSoftwareLink() { |
| 735 | + public static function getSoftwareLink() { |
736 | 736 | return "[http://www.microsoft.com/sql/ MS SQL Server]"; |
737 | 737 | } |
738 | 738 | |
Index: trunk/phase3/includes/db/DatabaseSqlite.php |
— | — | @@ -434,7 +434,7 @@ |
435 | 435 | /** |
436 | 436 | * @return string wikitext of a link to the server software's web site |
437 | 437 | */ |
438 | | - function getSoftwareLink() { |
| 438 | + public static function getSoftwareLink() { |
439 | 439 | return "[http://sqlite.org/ SQLite]"; |
440 | 440 | } |
441 | 441 | |
Index: trunk/phase3/includes/installer/Installer.i18n.php |
— | — | @@ -226,6 +226,11 @@ |
227 | 227 | 'config-type-postgres' => 'PostgreSQL', |
228 | 228 | 'config-type-sqlite' => 'SQLite', |
229 | 229 | 'config-type-oracle' => 'Oracle', |
| 230 | + 'config-type-info' => 'Mediawiki supports the following database systems: |
| 231 | + |
| 232 | +* $1 is the primary target for Mediawiki and is best supported ([http://www.php.net/manual/en/mysql.installation.php how to compile PHP with MySQL support]) |
| 233 | +* $2 is a popular open souce database system as an alternative to MySQL ([http://www.php.net/manual/en/pgsql.installation.php how to compile PHP with PostgreSQL support]) |
| 234 | +* $3 is a lightweight database system which is very well supported. ([http://www.php.net/manual/en/pdo.installation.php How to compile PHP with SQLite support], uses PDO)', |
230 | 235 | 'config-header-mysql' => 'MySQL settings', |
231 | 236 | 'config-header-postgres' => 'PostgreSQL settings', |
232 | 237 | 'config-header-sqlite' => 'SQLite settings', |
Index: trunk/phase3/includes/installer/WebInstallerPage.php |
— | — | @@ -224,6 +224,13 @@ |
225 | 225 | $types = "<ul class=\"config-settings-block\">\n"; |
226 | 226 | $settings = ''; |
227 | 227 | $defaultType = $this->getVar( 'wgDBtype' ); |
| 228 | + |
| 229 | + $mysql = DatabaseMysql::getSoftwareLink(); |
| 230 | + $postgres = DatabasePostgres::getSoftwareLink(); |
| 231 | + $sqlite = DatabaseSqlite::getSoftwareLink(); |
| 232 | + $this->addHTML( $this->parent->getInfoBox( |
| 233 | + wfMsg( 'config-type-info', $mysql, $postgres, $sqlite ) ) ); |
| 234 | + |
228 | 235 | foreach ( $this->parent->getVar( '_CompiledDBs' ) as $type ) { |
229 | 236 | $installer = $this->parent->getDBInstaller( $type ); |
230 | 237 | $types .= |