https://www.mediawiki.org/wiki/Special:Code/MediaWiki/112606

Revision: 112606
Author:   nikerabbit
Date:     2012-02-28 15:46:03 +0000 (Tue, 28 Feb 2012)
Log Message:
-----------
Make the zero languages link to translation view

Modified Paths:
--------------
    trunk/extensions/Translate/PageTranslation.i18n.php
    trunk/extensions/Translate/tag/PageTranslationHooks.php

Modified: trunk/extensions/Translate/PageTranslation.i18n.php
===================================================================
--- trunk/extensions/Translate/PageTranslation.i18n.php 2012-02-28 15:44:11 UTC 
(rev 112605)
+++ trunk/extensions/Translate/PageTranslation.i18n.php 2012-02-28 15:46:03 UTC 
(rev 112606)
@@ -86,6 +86,7 @@
 
        'tpt-languages-legend' => 'Other languages:',
        'tpt-languages-separator' => ' • ',
+       'tpt-languages-zero' => 'Start translation for this language',
 
        'tpt-target-page' => 'This page cannot be updated manually.
 This page is a translation of page [[$1]] and the translation can be updated 
using [$2 the translation tool].',
@@ -259,6 +260,7 @@
        'pt-deletepage-action-check' => 'This is a button label. "List" is an 
imperative verb.',
        'pt-deletepage-current' => '{{Identical|Page name}}',
        'pt-deletepage-reason' => '{{Identical|Reason}}',
+       'tpt-languages-zero' => 'Tooltip for a link in <language /> when 
language is included because it is a priority language, but translation does 
not yet exists. It links directly to the translation view.',
 );
 
 /** ꢱꣃꢬꢵꢯ꣄ꢡ꣄ꢬꢵ (ꢱꣃꢬꢵꢯ꣄ꢡ꣄ꢬꢵ)

Modified: trunk/extensions/Translate/tag/PageTranslationHooks.php
===================================================================
--- trunk/extensions/Translate/tag/PageTranslationHooks.php     2012-02-28 
15:44:11 UTC (rev 112605)
+++ trunk/extensions/Translate/tag/PageTranslationHooks.php     2012-02-28 
15:46:03 UTC (rev 112606)
@@ -248,15 +248,29 @@
                        // Add links to other languages
                        $suffix = ( $code === 'en' ) ? '' : "/$code";
                        $_title = Title::makeTitle( $title->getNamespace(), 
$title->getDBkey() . $suffix );
-
-                       if ( $parser->getTitle()->getText() === 
$_title->getText() ) {
+                       if ( intval( $percent ) === 0 ) {
+                               /* When language is included because it is a 
priority language,
+                                * but translation does not yet exists, link 
directly to the
+                                * translation view. */
+                               $translate = SpecialPage::getTitleFor( 
'Translate' );
+                               $params = array(
+                                       'group' => $page->getMessageGroupId(),
+                                       'language' => $code,
+                                       'task' => 'view'
+                               );
+                               $attribs = array(
+                                       'title' => wfMessage( 
'tpt-languages-zero' )->text(),
+                                       'class' => 'new', // For red link color
+                               );
+                               $languages[] = Linker::link( $translate, "$name 
$percentImage", $attribs, $params );
+                       } elseif ( $parser->getTitle()->getText() === 
$_title->getText() ) {
                                $name = Html::rawElement( 'span', array( 
'class' => 'mw-pt-languages-selected' ), $name );
                                $languages[] = "$name $percentImage";
                        } else {
                                if ( $code === $userLangCode ) {
                                        $name = Html::rawElement( 'span', 
array( 'class' => 'mw-pt-languages-ui' ), $name );
                                }
-                               $languages[] = Linker::link( $_title, "$name 
$percentImage" );
+                               $languages[] = Linker::linkKnown( $_title, 
"$name $percentImage" );
                        }
                }
 


_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to