/**
* Initiate an upgrade of the existing database
- * @param array $vars Variables from LocalSettings.php and AdminSettings.php
+ * @param array $vars Variables from LocalSettings.php
* @return Status
*/
protected function handleExistingUpgrade( $vars ) {
// Messages: config-dbsupport-mysql, config-dbsupport-postgres, config-dbsupport-oracle,
// config-dbsupport-sqlite
$dbSupport = '';
- foreach ( $this->parent->getDBTypes() as $type ) {
+ foreach ( Installer::getDBTypes() as $type ) {
$dbSupport .= wfMessage( "config-dbsupport-$type" )->plain() . "\n";
}
$this->addHTML( $this->parent->getInfoBox(
$msg = false;
$pwd = $this->getVar( '_AdminPassword' );
$user = User::newFromName( $cname );
- $valid = $user && $user->getPasswordValidity( $pwd );
+ if ( $user ) {
+ $valid = $user->getPasswordValidity( $pwd );
+ } else {
+ $valid = 'config-admin-name-invalid';
+ }
if ( strval( $pwd ) === '' ) {
# $user->getPasswordValidity just checks for $wgMinimalPasswordLength.
# This message is more specific and helpful.
} elseif ( $pwd !== $this->getVar( '_AdminPassword2' ) ) {
$msg = 'config-admin-password-mismatch';
} elseif ( $valid !== true ) {
- # As of writing this will only catch the username being e.g. 'FOO' and
- # the password 'foo'
$msg = $valid;
}
if ( $msg !== false ) {
) {
// JS appears to be the only method that works consistently with IE7+
$this->addHtml( "\n<script>jQuery( function () { document.location = " .
- Xml::encodeJsVar( $lsUrl ) . "; } );</script>\n" );
+ Xml::encodeJsVar( $lsUrl ) . "; } );</script>\n" );
} else {
$this->parent->request->response()->header( "Refresh: 0;url=$lsUrl" );
}