diff options
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.js | 33 |
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 ) ); +}() ); |