summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js')
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js68
1 files changed, 37 insertions, 31 deletions
diff --git a/MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js b/MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js
index e5986e1a..76b605b9 100644
--- a/MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js
+++ b/MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js
@@ -34,14 +34,13 @@
}
function removeSelectedRequests() {
- var $nextRequest,
- $selectedRequests = $( '.request-selector:checked' );
+ var $selectedRequests = $( '.request-selector:checked' );
- $nextRequest = $selectedRequests
+ var $nextRequest = $selectedRequests
.first() // First selected request
.closest( '.request' ) // The request corresponds that checkbox
.prevAll( ':not(.hide)' ) // Go back till a non-hidden request
- .first(); // The above selecter gives list from bottom to top. Select the bottom one.
+ .first(); // The above selector gives list from bottom to top. Select the bottom one.
$selectedRequests.closest( '.request' ).remove();
@@ -67,8 +66,7 @@
* @param {Object} request The request data set from backend on request items
*/
function displayRequestDetails( request ) {
- var storage,
- $reminderStatus = $( '<span>' ).addClass( 'reminder-status' ),
+ var $reminderStatus = $( '<span>' ).addClass( 'reminder-status' ),
$detailsPane = $( '.details.pane' );
if ( request.reminderscount ) {
@@ -182,14 +180,27 @@
}
}
- // @todo: move higher in the tree
- storage = new mw.translate.TranslationStashStorage();
- storage.getUserTranslations( request.username ).done( showTranslations );
+ getUserTranslations( request.username ).done( showTranslations );
+ }
+
+ /**
+ * Get the current users translations.
+ *
+ * @param {string} user User name
+ * @return {jQuery.Promise}
+ */
+ function getUserTranslations( user ) {
+ var api = new mw.Api();
+
+ return api.postWithToken( 'csrf', {
+ action: 'translationstash',
+ subaction: 'query',
+ username: user
+ } );
}
function showTranslations( translations ) {
- var gender,
- $target = $( '.translations' );
+ var $target = $( '.translations' );
$target.empty();
@@ -204,7 +215,7 @@
return;
}
- gender = $( '.requests-list .request.selected' ).data( 'data' ).gender;
+ var gender = $( '.requests-list .request.selected' ).data( 'data' ).gender;
$target.append(
$( '<div>' )
.addClass( 'row title' )
@@ -349,12 +360,11 @@
* or hides that link if there are no such requests.
*/
function indicateOlderRequests() {
- var oldRequestsCount, oldRequestsCountString,
- $olderRequests = getOlderRequests(),
+ var $olderRequests = getOlderRequests(),
$olderRequestsIndicator = $( '.older-requests-indicator' );
- oldRequestsCount = $olderRequests.length;
- oldRequestsCountString = mw.language.convertNumber( oldRequestsCount );
+ var oldRequestsCount = $olderRequests.length;
+ var oldRequestsCountString = mw.language.convertNumber( oldRequestsCount );
if ( oldRequestsCount ) {
$olderRequestsIndicator
@@ -404,8 +414,7 @@
}
function selectAllRequests() {
- var selectedCount,
- $requestCheckboxes = $( '.request-selector' ),
+ var $requestCheckboxes = $( '.request-selector' ),
$detailsPane = $( '.details.pane' ),
$selectAll = $( '.request-selector-all' ),
$requestRows = $( '.requests .request' ),
@@ -419,6 +428,7 @@
} );
} );
+ var selectedCount;
if ( selectAllChecked ) {
displayOnMultipleSelection();
$visibleRows.addClass( 'selected' );
@@ -476,8 +486,7 @@
* @param {jQuery.Event} e
*/
function requestSelectHandler( e ) {
- var checkedCount, $checkedBoxes,
- request = e.target,
+ var request = e.target,
$detailsPane = $( '.details.pane' ),
$requestCheckboxes = $( '.request-selector' ),
$selectAll = $( '.request-selector-all' ),
@@ -492,8 +501,8 @@
$thisRequestRow.removeClass( 'selected' );
}
- $checkedBoxes = $requestCheckboxes.filter( ':checked' );
- checkedCount = $checkedBoxes.length;
+ var $checkedBoxes = $requestCheckboxes.filter( ':checked' );
+ var checkedCount = $checkedBoxes.length;
if ( checkedCount === $requestCheckboxes.length ) {
// All boxes are selected
@@ -561,10 +570,9 @@
}
LanguageFilter.prototype.init = function () {
- var languageFilter = this,
- $clearButton;
+ var languageFilter = this;
- $clearButton = $( '<button>' )
+ var $clearButton = $( '<button>' )
.addClass( 'clear-language-selector hide' )
.text( 'Ă—' );
@@ -654,12 +662,11 @@
};
TranslatorSearch.prototype.keyup = function () {
- var query,
- translatorSearch = this;
+ var translatorSearch = this;
// Respond to the keypress events after a small timeout to avoid freeze when typed fast
delay( function () {
- query = translatorSearch.$search.val().trim().toLowerCase();
+ var query = translatorSearch.$search.val().trim().toLowerCase();
translatorSearch.filter( query );
}, 300 );
};
@@ -685,14 +692,13 @@
};
function updateAfterFiltering() {
- var $selectedRequests,
- $firstVisibleUser = $( '.request:not(.hide)' ).first();
+ var $firstVisibleUser = $( '.request:not(.hide)' ).first();
if ( $firstVisibleUser.length ) {
$firstVisibleUser.trigger( 'click' );
} else {
$( '.details.pane' ).empty();
- $selectedRequests = $( '.request-selector:checked' );
+ var $selectedRequests = $( '.request-selector:checked' );
$selectedRequests.closest( '.request' ).removeClass( 'selected' );
$selectedRequests.prop( {
checked: false,