Page MenuHomeWickedGov Phorge

MessageDefinitions.php
No OneTemporary

Size
1 KB
Referenced Files
None
Subscribers
None

MessageDefinitions.php

<?php
declare( strict_types = 1 );
namespace MediaWiki\Extension\Translate\MessageLoading;
use MediaWiki\Title\Title;
/**
* Wrapper for message definitions, just to beauty the code.
* @author Niklas Laxström
* @copyright Copyright © 2007-2011, Niklas Laxström
* @license GPL-2.0-or-later
*/
class MessageDefinitions {
private ?int $namespace;
/** @var string[] */
private array $messages;
/** @var Title[]|null */
private ?array $pages;
/**
* @param string[] $messages
* @param int|false $namespace
*/
public function __construct( array $messages, $namespace = false ) {
$this->messages = $messages;
$this->namespace = $namespace === false ? null : $namespace;
}
/** @return string[] */
public function getDefinitions(): array {
return $this->messages;
}
/** @return Title[] List of title indexed by message key. */
public function getPages(): array {
$namespace = $this->namespace;
if ( isset( $this->pages ) ) {
return $this->pages;
}
$pages = [];
foreach ( array_keys( $this->messages ) as $key ) {
if ( $namespace === null ) {
// pages are in format ex. "8:jan"
[ $tns, $tkey ] = explode( ':', $key, 2 );
$title = Title::makeTitleSafe( (int)$tns, $tkey );
} else {
$title = Title::makeTitleSafe( $namespace, $key );
}
if ( !$title ) {
wfWarn( "Invalid title ($namespace:)$key" );
continue;
}
$pages[$key] = $title;
}
$this->pages = $pages;
return $this->pages;
}
}

File Metadata

Mime Type
text/x-php
Expires
Tue, Aug 18, 16:02 (3 w, 5 d ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
59/a5/1afb3104d4665ce5861e262851df
Default Alt Text
MessageDefinitions.php (1 KB)

Event Timeline