/** some messages for the current lang */
var $messages = array();
- function languages() {
+ function __construct() {
$this->clear();
$this->loadList();
}
// available language files
$dir = opendir("$IP/languages");
while ($file = readdir($dir)) {
- if (preg_match("/Language([^.]*?)\.php$/", $file, $m)) {
+ if (preg_match("/Messages([^.]*?)\.php$/", $file, $m)) {
$this->list[] = $m[1];
}
}
sort($this->list);
-
- // Cleanup file list
- foreach($this->list as $key => $lang) {
- if ($lang == 'Utf8' || $lang == '' || $lang == 'Converter')
- unset($this->list[$key]);
- }
}
function getList() { return $this->list; }
function redundant(&$arr, $langcode) {
- global $wgAllMessagesEn;
-
$redundant = 0;
+ $englishMessages = Language::getMessagesFor( 'en' );
foreach(array_keys($arr) as $key) {
- if ( @$wgAllMessagesEn[$key] === null ) {
+ if ( !isset( $englishMessages[$key] ) ) {
global $options;
- if( isset($options['showold']) ) {
+ if( isset( $options['showold'] ) ) {
print "Deprecated [$langcode]: $key\n";
}
++$redundant;
$msgs = array();
foreach($langTool->getList() as $langcode) {
// Since they aren't loaded by default..
- require_once( 'languages/Language' . $langcode . '.php' );
- $arr = 'wgAllMessages'.$langcode;
- if(@is_array($$arr)) {
+ require( 'languages/Messages' . $langcode . '.php' );
+ if( isset( $messages ) ) {
$msgs[$wgContLang->lcfirst($langcode)] = array(
- 'total' => count($$arr),
- 'redundant' => redundant($$arr, $langcode),
+ 'total' => count( $messages ),
+ 'redundant' => redundant( $messages, $langcode ),
);
} else {
$msgs[$wgContLang->lcfirst($langcode)] = array(
'redundant' => 0,
);
}
+ unset( $messages );
}
// Top entry