parent::__construct( 'badtitle', 'badtitletext', array() );
} else {
$errorMessageParams = $msg->getErrorMessageParameters();
- $titleText = $msg->getTitleText();
- if ( $titleText ) {
- $errorMessageParams[] = $titleText;
- }
parent::__construct( 'badtitle', $errorMessage, $errorMessageParams );
}
} else {
/**
* @param string $errorMessage Localisation message describing the error (since MW 1.26)
* @param string $titleText The invalid title text (since MW 1.26)
- * @param string[] $errorMessageParameters Additional parameters for the error message (since MW 1.26)
+ * @param string[] $errorMessageParameters Additional parameters for the error message. $titleText will be appended if it's not null. (since MW 1.26)
*/
public function __construct( $errorMessage = null, $titleText = null, $errorMessageParameters = array() ) {
$this->errorMessage = $errorMessage;
$this->titleText = $titleText;
+ if ( $titleText !== null ) {
+ $errorMessageParameters[] = $titleText;
+ }
$this->errorMessageParameters = $errorMessageParameters;
+
+ // Supply something useful for Exception::getMessage() to return.
+ $enMsg = wfMessage( $errorMessage, $errorMessageParameters );
+ $enMsg->inLanguage( 'en' )->useDatabase( false );
+ parent::__construct( $enMsg->text() );
}
/**
public function getTitleText() {
return $this->titleText;
}
-
+
/**
* @since 1.26
* @return string|null
public function getErrorMessage() {
return $this->errorMessage;
}
-
+
/**
* @since 1.26
* @return string[]