}
if ( $value instanceof Message ) { // Message, RawMessage, ApiMessage, etc
- $message = clone( $value );
+ $message = clone $value;
} elseif ( $value instanceof MessageSpecifier ) {
$message = new Message( $value );
} elseif ( is_string( $value ) ) {
*
* @since 1.17
*
- * @param mixed ... Parameters as strings or arrays from
+ * @param mixed $args,... Parameters as strings or arrays from
* Message::numParam() and the like, or a single array of parameters.
*
* @return Message $this
*/
protected function formatListParam( array $params, $listType, $format ) {
if ( !isset( self::$listTypeMap[$listType] ) ) {
- $warning = 'Invalid list type for message "' . $this->getKey() . '": ' .
- htmlspecialchars( serialize( $params )
- );
+ $warning = 'Invalid list type for message "' . $this->getKey() . '": '
+ . htmlspecialchars( $listType )
+ . ' (params are ' . htmlspecialchars( serialize( $params ) ) . ')';
trigger_error( $warning, E_USER_WARNING );
$e = new Exception;
wfDebugLog( 'Bug58676', $warning . "\n" . $e->getTraceAsString() );
return $this->extractParam( new RawMessage( $vars, $params ), $format );
}
}
-
-/**
- * Variant of the Message class.
- *
- * Rather than treating the message key as a lookup
- * value (which is passed to the MessageCache and
- * translated as necessary), a RawMessage key is
- * treated as the actual message.
- *
- * All other functionality (parsing, escaping, etc.)
- * is preserved.
- *
- * @since 1.21
- */
-class RawMessage extends Message {
-
- /**
- * Call the parent constructor, then store the key as
- * the message.
- *
- * @see Message::__construct
- *
- * @param string $text Message to use.
- * @param array $params Parameters for the message.
- *
- * @throws InvalidArgumentException
- */
- public function __construct( $text, $params = [] ) {
- if ( !is_string( $text ) ) {
- throw new InvalidArgumentException( '$text must be a string' );
- }
-
- parent::__construct( $text, $params );
-
- // The key is the message.
- $this->message = $text;
- }
-
- /**
- * Fetch the message (in this case, the key).
- *
- * @return string
- */
- public function fetchMessage() {
- // Just in case the message is unset somewhere.
- if ( $this->message === null ) {
- $this->message = $this->key;
- }
-
- return $this->message;
- }
-
-}