better readconsole() function, moved from mcc.php and eval.php
[mediawiki.git] / maintenance / checktrans.php
blob2281e4331e1ba4c0c4d82a814c43a5b7b177e490
1 <?php
3 # Check to see if all messages have been translated into
4 # the selected language. To run this script, you must have
5 # a working installation, and it checks the selected language
6 # of that installation.
9 if ( ! is_readable( "../LocalSettings.php" ) ) {
10 print "A copy of your installation's LocalSettings.php\n" .
11 "must exist in the source directory.\n";
12 exit();
15 $wgCommandLineMode = true;
16 $DP = "../includes";
17 require_once( "../LocalSettings.php" );
19 if ( "en" == $wgLanguageCode ) {
20 print "Current selected language is English. Cannot check translations.\n";
21 exit();
23 $include = "Language" . ucfirst( $wgLanguageCode ) . ".php";
24 if ( ! is_readable( "{$IP}/{$include}" ) ) {
25 print "Translation file \"{$include}\" not found in installation directory.\n" .
26 "You must have the software installed to run this script.\n";
27 exit();
30 umask( 000 );
31 set_time_limit( 0 );
33 require_once( "{$IP}/Setup.php" );
34 $wgTitle = Title::newFromText( "Translation checking script" );
36 $count = $total = 0;
37 $msgarray = "wgAllMessages" . ucfirst( $wgLanguageCode );
39 foreach ( $wgAllMessagesEn as $code => $msg ) {
40 ++$total;
42 if ( ! array_key_exists( $code, $$msgarray ) ) {
43 print "{$code}\n";
44 ++$count;
47 print "{$count} messages of {$total} not translated.\n";