X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=resources%2Fsrc%2Fmoment-locale-overrides.js;h=bafb86a227953ed49b8860f9121cd050e223e10f;hb=e73b63dd3b977eb3a1606d88f374a47ac0ae102c;hp=8aba831c43c0d7ce8e1d6982106a24c379843c6e;hpb=22806b0a4509e97b56fb52b387e17e3c80fb7eb2;p=lhc%2Fweb%2Fwiklou.git diff --git a/resources/src/moment-locale-overrides.js b/resources/src/moment-locale-overrides.js index 8aba831c43..bafb86a227 100644 --- a/resources/src/moment-locale-overrides.js +++ b/resources/src/moment-locale-overrides.js @@ -1,42 +1,44 @@ -/* global moment, mw */ +/* global mediaWiki, moment */ -// HACK: Overwrite moment's i18n with MediaWiki's for the current language so that -// wgTranslateNumerals is respected. -moment.updateLocale( moment.locale(), { - preparse: function ( s ) { - var i, - table = mw.language.getDigitTransformTable(); - if ( mw.config.get( 'wgTranslateNumerals' ) ) { - for ( i = 0; i < 10; i++ ) { - if ( table[ i ] !== undefined ) { - s = s.replace( new RegExp( mw.RegExp.escape( table[ i ] ), 'g' ), i ); +( function ( mw ) { + // HACK: Overwrite moment's i18n with MediaWiki's for the current language so that + // wgTranslateNumerals is respected. + moment.updateLocale( moment.locale(), { + preparse: function ( s ) { + var i, + table = mw.language.getDigitTransformTable(); + if ( mw.config.get( 'wgTranslateNumerals' ) ) { + for ( i = 0; i < 10; i++ ) { + if ( table[ i ] !== undefined ) { + s = s.replace( new RegExp( mw.RegExp.escape( table[ i ] ), 'g' ), i ); + } } } - } - // HACK: momentjs replaces commas in some languages, which is the only other use of preparse - // aside from digit transformation. We can only override preparse, not extend it, so we - // have to replicate the comma replacement functionality here. - if ( [ 'ar', 'ar-sa', 'fa' ].indexOf( mw.config.get( 'wgUserLanguage' ) ) !== -1 ) { - s = s.replace( /،/g, ',' ); - } - return s; - }, - postformat: function ( s ) { - var i, - table = mw.language.getDigitTransformTable(); - if ( mw.config.get( 'wgTranslateNumerals' ) ) { - for ( i = 0; i < 10; i++ ) { - if ( table[ i ] !== undefined ) { - s = s.replace( new RegExp( i, 'g' ), table[ i ] ); + // HACK: momentjs replaces commas in some languages, which is the only other use of preparse + // aside from digit transformation. We can only override preparse, not extend it, so we + // have to replicate the comma replacement functionality here. + if ( [ 'ar', 'ar-sa', 'fa' ].indexOf( mw.config.get( 'wgUserLanguage' ) ) !== -1 ) { + s = s.replace( /،/g, ',' ); + } + return s; + }, + postformat: function ( s ) { + var i, + table = mw.language.getDigitTransformTable(); + if ( mw.config.get( 'wgTranslateNumerals' ) ) { + for ( i = 0; i < 10; i++ ) { + if ( table[ i ] !== undefined ) { + s = s.replace( new RegExp( i, 'g' ), table[ i ] ); + } } } + // HACK: momentjs replaces commas in some languages, which is the only other use of postformat + // aside from digit transformation. We can only override postformat, not extend it, so we + // have to replicate the comma replacement functionality here. + if ( [ 'ar', 'ar-sa', 'fa' ].indexOf( mw.config.get( 'wgUserLanguage' ) ) !== -1 ) { + s = s.replace( /,/g, '،' ); + } + return s; } - // HACK: momentjs replaces commas in some languages, which is the only other use of postformat - // aside from digit transformation. We can only override postformat, not extend it, so we - // have to replicate the comma replacement functionality here. - if ( [ 'ar', 'ar-sa', 'fa' ].indexOf( mw.config.get( 'wgUserLanguage' ) ) !== -1 ) { - s = s.replace( /,/g, '،' ); - } - return s; - } -} ); + } ); +}( mediaWiki ) );