http://www.mediawiki.org/wiki/Special:Code/MediaWiki/60736
Revision: 60736 Author: maxsem Date: 2010-01-06 16:55:01 +0000 (Wed, 06 Jan 2010) Log Message: ----------- Clean-up for r60598: introduced a global setting for non-existant languages. Needs further integration into Language class, probably even getLanguageNames(), but I don't want to mess with preferences (which also display bogus language codes, btw) or LocalisationCache yet. Modified Paths: -------------- trunk/phase3/config/Installer.php trunk/phase3/includes/DefaultSettings.php Modified: trunk/phase3/config/Installer.php =================================================================== --- trunk/phase3/config/Installer.php 2010-01-06 16:00:46 UTC (rev 60735) +++ trunk/phase3/config/Installer.php 2010-01-06 16:55:01 UTC (rev 60736) @@ -2118,34 +2118,13 @@ } function getLanguageList() { - global $wgLanguageNames, $IP; - if( !isset( $wgLanguageNames ) ) { - require_once( "$IP/languages/Names.php" ); - } + global $wgDummyLanguageCodes; $codes = array(); - - // qqq is a dummy "language" for documenting messages, other language codes are legacy/fallback. - $blacklist = array( 'qqq', 'als', 'be-x-old', 'dk', 'fiu-vro', 'iu', 'nb', 'simple', 'tp' ); - - $d = opendir( "../languages/messages" ); - /* In case we are called from the root directory */ - if (!$d) - $d = opendir( "languages/messages"); - while( false !== ($f = readdir( $d ) ) ) { - $m = array(); - if( preg_match( '/Messages([A-Z][a-z_]+)\.php$/', $f, $m ) ) { - $code = str_replace( '_', '-', strtolower( $m[1] ) ); - if( in_array( $code, $blacklist ) ) continue; - if( isset( $wgLanguageNames[$code] ) ) { - $name = wfBCP47( $code ) . ' - ' . $wgLanguageNames[$code]; - } else { - $name = $code; - } - $codes[$code] = $name; - } + foreach ( Language::getLanguageNames() as $code => $name ) { + if( in_array( $code, $wgDummyLanguageCodes ) ) continue; + $codes[$code] = $code . ' - ' . $name; } - closedir( $d ); ksort( $codes ); return $codes; } Modified: trunk/phase3/includes/DefaultSettings.php =================================================================== --- trunk/phase3/includes/DefaultSettings.php 2010-01-06 16:00:46 UTC (rev 60735) +++ trunk/phase3/includes/DefaultSettings.php 2010-01-06 16:55:01 UTC (rev 60736) @@ -861,6 +861,13 @@ /** List of language names or overrides for default names in Names.php */ $wgExtraLanguageNames = array(); +/** + * List of language codes that don't correspond to an actual language. + * These codes are leftoffs from renames, or other legacy things. + * Also, qqq is a dummy "language" for documenting messages. + */ +$wgDummyLanguageCodes = array( 'qqq', 'als', 'be-x-old', 'dk', 'fiu-vro', 'iu', 'nb', 'simple', 'tp' ); + /** We speak UTF-8 all the time now, unless some oddities happen */ $wgInputEncoding = 'UTF-8'; $wgOutputEncoding = 'UTF-8'; _______________________________________________ MediaWiki-CVS mailing list MediaWiki-CVS@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs