Santhosh has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/88955


Change subject: Show the translations of the user for review
......................................................................

Show the translations of the user for review

UI need some more work to make it as per
https://commons.wikimedia.org/wiki/File:Translate-workflow-spec.pdf?page=29

Change-Id: Ifde218749b4d1de53fab1975e1588f9d3f020a4c
---
M messagegroups/SandboxMessageGroup.php
M resources/css/ext.translate.special.translatesandbox.css
M resources/js/ext.translate.special.translatesandbox.js
M specials/SpecialTranslateSandbox.php
4 files changed, 62 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Translate 
refs/changes/55/88955/1

diff --git a/messagegroups/SandboxMessageGroup.php 
b/messagegroups/SandboxMessageGroup.php
index d54c573..d01bd72 100644
--- a/messagegroups/SandboxMessageGroup.php
+++ b/messagegroups/SandboxMessageGroup.php
@@ -130,7 +130,7 @@
        /**
         * Subpage language code, if any in the title, is ignored.
         */
-       public function getMessageContent( MessageHandle $handle ) {
+       public static function getMessageContent( MessageHandle $handle ) {
                $groupId = MessageIndex::getPrimaryGroupId( $handle );
                $group = MessageGroups::getGroup( $groupId );
                if ( $group ) {
diff --git a/resources/css/ext.translate.special.translatesandbox.css 
b/resources/css/ext.translate.special.translatesandbox.css
index 5ee2558..3a45e44 100644
--- a/resources/css/ext.translate.special.translatesandbox.css
+++ b/resources/css/ext.translate.special.translatesandbox.css
@@ -163,3 +163,9 @@
 textarea.body {
        height: 300px;
 }
+
+.translations .row {
+       border-bottom: 1px solid #c9c8c8;
+       padding: 10px;
+       font-size: 1em;
+}
diff --git a/resources/js/ext.translate.special.translatesandbox.js 
b/resources/js/ext.translate.special.translatesandbox.js
index c8b220f..8e21868 100644
--- a/resources/js/ext.translate.special.translatesandbox.js
+++ b/resources/js/ext.translate.special.translatesandbox.js
@@ -114,7 +114,8 @@
         * @param {Object} request The request data set from backend on request 
items
         */
        function displayRequestDetails( request ) {
-               var $detailsPane = $( '.details.pane' );
+               var $detailsPane = $( '.details.pane' ),
+                       $translations;
 
                $detailsPane.empty().append(
                        $( '<div>' )
@@ -161,8 +162,27 @@
                                                        e.preventDefault();
                                                        reminderDialog( request 
);
                                                } )
-                               )
+                               ),
+                       $( '<div>' )
+                               .addClass( 'translations row' )
                );
+
+               $translations = $detailsPane.find( '.translations' );
+               $.each( request.translations, function( index, translation ) {
+                       $translations.append(
+                               $( '<div>' )
+                                       .addClass( 'row' )
+                                       .append(
+                                               $( '<div>' )
+                                                       .addClass( 'six columns 
source' )
+                                                       .text( 
translation.source ),
+                                               $( '<div>' )
+                                                       .addClass( 'six columns 
translation' )
+                                                       .text( 
translation.value  + '(' + translation.targetlanguage + ')' )
+                                       )
+                               );
+               } );
+
        }
 
        $( document ).ready( function () {
diff --git a/specials/SpecialTranslateSandbox.php 
b/specials/SpecialTranslateSandbox.php
index e641cdf..3e5026a 100644
--- a/specials/SpecialTranslateSandbox.php
+++ b/specials/SpecialTranslateSandbox.php
@@ -91,11 +91,28 @@
        }
 
        protected function makeRequestItem( User $user ) {
+               $stash = new TranslationStashStorage( wfGetDB( DB_MASTER ) );
+               $translations = $stash->getTranslations( $user );
+               $usertranslations = array();
+
+               foreach( $translations as $translation ) {
+                       $title = $translation->getTitle();
+                       $handle = new MessageHandle( $title );
+                       $usertranslations[] = array(
+                               'title' => 
$translation->getTitle()->getPrefixedDBKey(),
+                               'targetlanguage' => $handle->getCode(),
+                               'source' => 
SandboxMessageGroup::getMessageContent( $handle ),
+                               'value' => $translation->getValue(),
+                               'metadata' => $translation->getMetadata(),
+                       );
+               }
+
                $request = array(
                        'username' => $user->getName(),
                        'email' => $user->getEmail(),
                        'registrationdate' => $user->getRegistration(),
-                       'translations' => 0,
+                       'translationcount' => count( $translations ),
+                       'translations' => $usertranslations,
                        'userid' => $user->getId(),
                );
 
@@ -103,7 +120,7 @@
 
                $nameEnc = htmlspecialchars( $request['username'] );
                $emailEnc = htmlspecialchars( $request['email'] );
-               $countEnc = htmlspecialchars( $request['translations'] );
+               $countEnc = htmlspecialchars( $request['translationcount'] );
                $timestamp = new MWTimestamp( $request['registrationdate'] );
                $agoEnc = htmlspecialchars( $timestamp->getHumanTimestamp() );
 
@@ -124,4 +141,18 @@
 </div>
 HTML;
        }
+
+
+       /**
+        * Subpage language code, if any in the title, is ignored.
+        */
+       public function getMessageContent( MessageHandle $handle ) {
+               $groupId = MessageIndex::getPrimaryGroupId( $handle );
+               $group = MessageGroups::getGroup( $groupId );
+               if ( $group ) {
+                       return $group->getMessage( $handle->getKey(), 
$group->getSourceLanguage() );
+               }
+
+               throw new MWException( 'Could not find group for ' . 
$handle->getKey() );
+       }
 }

-- 
To view, visit https://gerrit.wikimedia.org/r/88955
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ifde218749b4d1de53fab1975e1588f9d3f020a4c
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Translate
Gerrit-Branch: master
Gerrit-Owner: Santhosh <[email protected]>

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

Reply via email to