From: Fomafix Date: Thu, 30 Mar 2017 19:30:14 +0000 (+0200) Subject: Add closure around moment-locale-overrides.js X-Git-Tag: 1.31.0-rc.0~3654^2 X-Git-Url: http://git.cyclocoop.org//%22%22.str_replace%28%27%22%27%2C?a=commitdiff_plain;h=a8638ca987a166b9221e51ee51a186fd7afb66e4;p=lhc%2Fweb%2Fwiklou.git Add closure around moment-locale-overrides.js Change-Id: I262d53479ab7971323db12d345fc0cd343b1df5e --- 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 ) );