mw.widgets.visibleLengthLimit: Apply number conversion to the limit
authorBartosz Dziewoński <matma.rex@gmail.com>
Mon, 16 Apr 2018 18:05:12 +0000 (20:05 +0200)
committerBartosz Dziewoński <matma.rex@gmail.com>
Mon, 16 Apr 2018 18:05:51 +0000 (20:05 +0200)
In languages like Persian (fa) or Hindi (hi) this should probably use
localised numerals.

Change-Id: Iba40634038079deba1c26bacb515f4791b4d38db

resources/Resources.php
resources/src/mediawiki.widgets.visibleLengthLimit/mediawiki.widgets.visibleLengthLimit.js

index 0595bb0..2f230f2 100644 (file)
@@ -2536,6 +2536,7 @@ return [
                'dependencies' => [
                        'oojs-ui-core',
                        'jquery.lengthLimit',
+                       'mediawiki.language',
                        'mediawiki.String',
                ],
                'targets' => [ 'desktop', 'mobile' ]
index 52ebe74..c92c5e5 100644 (file)
@@ -19,7 +19,9 @@
                limit = limit || +textInputWidget.$input.attr( 'maxlength' );
 
                function updateCount() {
-                       textInputWidget.setLabel( ( limit - byteLength( textInputWidget.getValue() ) ).toString() );
+                       var remaining = limit - byteLength( textInputWidget.getValue() );
+                       remaining = mw.language.convertNumber( remaining );
+                       textInputWidget.setLabel( remaining );
                }
                textInputWidget.on( 'change', updateCount );
                // Initialise value
@@ -41,7 +43,9 @@
                limit = limit || +textInputWidget.$input.attr( 'maxlength' );
 
                function updateCount() {
-                       textInputWidget.setLabel( ( limit - codePointLength( textInputWidget.getValue() ) ).toString() );
+                       var remaining = limit - codePointLength( textInputWidget.getValue() );
+                       remaining = mw.language.convertNumber( remaining );
+                       textInputWidget.setLabel( remaining );
                }
                textInputWidget.on( 'change', updateCount );
                // Initialise value