$wgOut->element('Problematic', true); $wgOut->element('%', true); $wgOut->blockend(); $wgGeneralMessages = $wgLanguages->getGeneralMessages(); $wgRequiredMessagesNumber = count($wgGeneralMessages['required']); foreach ($wgLanguages->getLanguages() as $code) { # Don't check English or RTL English if ($code == 'en' || $code == 'enRTL') { continue; } # Calculate the numbers $language = $wgContLang->getLanguageName($code); $messages = $wgLanguages->getMessages($code); $messagesNumber = count($messages['translated']); $requiredMessagesNumber = count($messages['required']); $requiredMessagesPercent = $wgOut->formatPercent($requiredMessagesNumber, $wgRequiredMessagesNumber); $obsoleteMessagesNumber = count($messages['obsolete']); $obsoleteMessagesPercent = $wgOut->formatPercent($obsoleteMessagesNumber, $messagesNumber, true); $messagesWithoutVariables = $wgLanguages->getMessagesWithoutVariables($code); $emptyMessages = $wgLanguages->getEmptyMessages($code); $messagesWithWhitespace = $wgLanguages->getMessagesWithWhitespace($code); $nonXHTMLMessages = $wgLanguages->getNonXHTMLMessages($code); $messagesWithWrongChars = $wgLanguages->getMessagesWithWrongChars($code); $problematicMessagesNumber = count(array_unique(array_merge($messagesWithoutVariables, $emptyMessages, $messagesWithWhitespace, $nonXHTMLMessages, $messagesWithWrongChars))); $problematicMessagesPercent = $wgOut->formatPercent($problematicMessagesNumber, $messagesNumber, true); # Output them $wgOut->blockstart(); $wgOut->element("{$language}"); $wgOut->element("{$code}"); $wgOut->element("{$requiredMessagesNumber}/{$wgRequiredMessagesNumber}"); $wgOut->element($requiredMessagesPercent);
$count = $wmfscores[$wmfcode]['count'] + 1; $score = ( ( $wmfscores[$wmfcode]['count'] * $wmfscores[$wmfcode]['score'] ) + $score ) / $count; $wmfscores[$wmfcode] = array( 'score' => $score, 'count' => $count ); } else { $wmfscores[$wmfcode] = array( 'score' => $score, 'count' => 1 ); } } else { $out->element( $score ); } } // Fill fields for groups if ( !$wmfscore ) { foreach ( $columns as $fields ) { list( $invert, $upper, $total ) = $fields; $c = $out->formatPercent( $upper, $total, $invert ); $out->element( $c ); } $out->blockend(); } } $out->footer(); if ( $reportScore && isset( $options['summary'] ) ) { if ( $reportScore && isset( $options['legendsummary'] ) ) { $out->addFreeText( "{{" . $options['legendsummary'] . "}}\n" ); } $out->summaryheading();