summaryrefslogtreecommitdiff
path: root/www/wiki/extensions/Translate/resources/js/ext.translate.statsbar.js
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/extensions/Translate/resources/js/ext.translate.statsbar.js')
-rw-r--r--www/wiki/extensions/Translate/resources/js/ext.translate.statsbar.js33
1 files changed, 19 insertions, 14 deletions
diff --git a/www/wiki/extensions/Translate/resources/js/ext.translate.statsbar.js b/www/wiki/extensions/Translate/resources/js/ext.translate.statsbar.js
index f3e24ece..aeec9314 100644
--- a/www/wiki/extensions/Translate/resources/js/ext.translate.statsbar.js
+++ b/www/wiki/extensions/Translate/resources/js/ext.translate.statsbar.js
@@ -3,19 +3,19 @@
*
* @author Niklas Laxström
* @author Santhosh Thottingal
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @since 2012-11-30
*/
/*
* Usage:
- * $( '<div>' ).languagestatsbar( {
- * language: 'fi',
- * group: 'core'
- * } );
+ * $( '<div>' ).languagestatsbar( {
+ * language: 'fi',
+ * group: 'core'
+ * } );
* The status bar will be rendered to the newly created div. Or use any container.
*/
-( function ( mw, $ ) {
+( function () {
'use strict';
var LanguageStatsBar = function ( container, options ) {
@@ -33,7 +33,7 @@
this.render();
} else {
mw.translate.loadLanguageStats( this.language )
- .done( $.proxy( this.render, this ) );
+ .done( this.render.bind( this ) );
}
},
@@ -48,7 +48,8 @@
statsbar.$statsBar.on( 'change', function ( event, to, from ) {
for ( i = 0; i < languageStats.length; i++ ) {
if ( languageStats[ i ].group === statsbar.group ) {
- if ( to === 'translated' && from === 'untranslated' ) {
+ // Changing a proofread message does not create a new translation
+ if ( to === 'translated' && from !== 'proofread' ) {
languageStats[ i ].translated++;
}
if ( to === 'proofread' ) {
@@ -64,7 +65,8 @@
if ( from === 'proofread' ) {
languageStats[ i ].proofread--;
}
- if ( from === 'translated' ) {
+ // Proofreading a message does not remove translation
+ if ( from === 'translated' && to !== 'proofread' ) {
languageStats[ i ].translated--;
}
break;
@@ -75,10 +77,13 @@
statsbar.update();
} );
- statsbar.$container.hover( function () {
- statsbar.elements.$info.removeClass( 'hide' );
- }, function () {
- statsbar.elements.$info.addClass( 'hide' );
+ statsbar.$container.on( {
+ mouseenter: function () {
+ statsbar.elements.$info.removeClass( 'hide' );
+ },
+ mouseleave: function () {
+ statsbar.elements.$info.addClass( 'hide' );
+ }
} );
},
@@ -179,4 +184,4 @@
mw.translate = mw.translate || {};
-}( mediaWiki, jQuery ) );
+}() );