Simplify by using native JavaScript instead of jQuery

Still use $.each for iterating over an Object because there is no
adequate function in ES5.

Change-Id: Idbec13c471e75a9cd5d67204d54bededdbd5582b
This commit is contained in:
Fomafix
2018-09-01 08:57:17 +02:00
committed by Krinkle
parent 1857627c2f
commit 971e4c742d
4 changed files with 14 additions and 22 deletions

View File

@@ -210,14 +210,12 @@
* @param {jQuery} $trigger Element to use as trigger. * @param {jQuery} $trigger Element to use as trigger.
*/ */
CompactInterlanguageList.prototype.createSelector = function ( $trigger ) { CompactInterlanguageList.prototype.createSelector = function ( $trigger ) {
var languages, var languages = Object.keys( this.interlanguageList ),
self = this, self = this,
ulsLanguageList = {}; ulsLanguageList = {};
languages = $.map( this.interlanguageList, function ( language, languageCode ) { $.each( this.interlanguageList, function ( languageCode, language ) {
ulsLanguageList[ languageCode ] = language.autonym; ulsLanguageList[ languageCode ] = language.autonym;
return languageCode;
} ); } );
// Attach ULS to the trigger // Attach ULS to the trigger
@@ -329,9 +327,7 @@
var language, languages, compactLanguages, i, var language, languages, compactLanguages, i,
compactedList = {}; compactedList = {};
languages = $.map( this.interlanguageList, function ( item, languageCode ) { languages = Object.keys( this.interlanguageList );
return languageCode;
} );
compactLanguages = this.compact( languages ); compactLanguages = this.compact( languages );

View File

@@ -456,7 +456,7 @@
// Get the saved font using the fontSelector defined in mw.webfonts.setup // Get the saved font using the fontSelector defined in mw.webfonts.setup
savedFont = this.$webfonts.getFont( language ); savedFont = this.$webfonts.getFont( language );
$.each( fonts, function ( key, font ) { fonts.forEach( function ( font ) {
var $fontOption; var $fontOption;
if ( font !== 'system' ) { if ( font !== 'system' ) {

View File

@@ -105,18 +105,14 @@
// Get the name of all registered modules and list them in left side menu. // Get the name of all registered modules and list them in left side menu.
// Sort the modules based on id // Sort the modules based on id
modules = $.map( $.fn.languagesettings.modules, function ( element, index ) { modules = Object.keys( $.fn.languagesettings.modules ).sort();
return index; modules.forEach( function ( moduleName ) {
} ).sort(); if ( !defaultModule ) {
$.each( modules, function ( index, moduleName ) { defaultModule = moduleName;
if ( $.fn.languagesettings.modules.hasOwnProperty( moduleName ) ) {
if ( !defaultModule ) {
defaultModule = moduleName;
}
// Call render function on the current setting module.
languageSettings.initModule( moduleName, defaultModule === moduleName );
} }
// Call render function on the current setting module.
languageSettings.initModule( moduleName, defaultModule === moduleName );
} ); } );
}, },

View File

@@ -40,9 +40,9 @@
$langselector = $( 'select#language' ); $langselector = $( 'select#language' );
function listFonts( fonts ) { function listFonts( fonts ) {
$.merge( fonts, [ 'Sans', 'Serif' ] ); fonts.push( 'Sans', 'Serif' );
$fontSelector.find( 'option' ).remove(); $fontSelector.find( 'option' ).remove();
$.each( fonts, function ( key, font ) { fonts.forEach( function ( font ) {
$fontSelector.append( $( "<option></option>" ) $fontSelector.append( $( "<option></option>" )
.attr( "value", font ).text( font ) ); .attr( "value", font ).text( font ) );
} ); } );
@@ -50,7 +50,7 @@
} }
listFonts( fonts ); listFonts( fonts );
$.each( languages, function ( lang, language ) { languages.forEach( function ( language ) {
$langselector.append( $( "<option></option>" ) $langselector.append( $( "<option></option>" )
.attr( 'value', language ) .attr( 'value', language )
.text( language + " - " + $.uls.data.getAutonym( language ) ) ); .text( language + " - " + $.uls.data.getAutonym( language ) ) );