From 0fbdbc2c41cefd33eefab045860611143ae384c1 Mon Sep 17 00:00:00 2001 From: Fomafix Date: Sat, 1 Sep 2018 08:57:17 +0200 Subject: [PATCH] Simplify by using native JavaScript instead of jQuery Change-Id: I2ca5fbb21ac473f482579a944e5ab68c9374191c --- resources/js/ext.uls.compactlinks.js | 12 ++++-------- resources/js/ext.uls.displaysettings.js | 2 +- resources/js/ext.uls.languagesettings.js | 18 +++++++----------- tests/webfonts.html | 6 +++--- 4 files changed, 15 insertions(+), 23 deletions(-) diff --git a/resources/js/ext.uls.compactlinks.js b/resources/js/ext.uls.compactlinks.js index 20f02d00..952da1d1 100644 --- a/resources/js/ext.uls.compactlinks.js +++ b/resources/js/ext.uls.compactlinks.js @@ -210,14 +210,12 @@ * @param {jQuery} $trigger Element to use as trigger. */ CompactInterlanguageList.prototype.createSelector = function ( $trigger ) { - var languages, + var languages = Object.keys( this.interlanguageList ), self = this, ulsLanguageList = {}; - languages = $.map( this.interlanguageList, function ( language, languageCode ) { - ulsLanguageList[ languageCode ] = language.autonym; - - return languageCode; + languages.forEach( function ( languageCode ) { + ulsLanguageList[ languageCode ] = this.interlanguageList[ languageCode ].autonym; } ); // Attach ULS to the trigger @@ -329,9 +327,7 @@ var language, languages, compactLanguages, i, compactedList = {}; - languages = $.map( this.interlanguageList, function ( item, languageCode ) { - return languageCode; - } ); + languages = Object.keys( this.interlanguageList ); compactLanguages = this.compact( languages ); diff --git a/resources/js/ext.uls.displaysettings.js b/resources/js/ext.uls.displaysettings.js index 557c4773..55678b4d 100644 --- a/resources/js/ext.uls.displaysettings.js +++ b/resources/js/ext.uls.displaysettings.js @@ -456,7 +456,7 @@ // Get the saved font using the fontSelector defined in mw.webfonts.setup savedFont = this.$webfonts.getFont( language ); - $.each( fonts, function ( key, font ) { + fonts.forEach( function ( font ) { var $fontOption; if ( font !== 'system' ) { diff --git a/resources/js/ext.uls.languagesettings.js b/resources/js/ext.uls.languagesettings.js index 6fd18cf0..40101d18 100644 --- a/resources/js/ext.uls.languagesettings.js +++ b/resources/js/ext.uls.languagesettings.js @@ -105,18 +105,14 @@ // Get the name of all registered modules and list them in left side menu. // Sort the modules based on id - modules = $.map( $.fn.languagesettings.modules, function ( element, index ) { - return index; - } ).sort(); - $.each( modules, function ( index, moduleName ) { - if ( $.fn.languagesettings.modules.hasOwnProperty( moduleName ) ) { - if ( !defaultModule ) { - defaultModule = moduleName; - } - - // Call render function on the current setting module. - languageSettings.initModule( moduleName, defaultModule === moduleName ); + modules = Object.keys( $.fn.languagesettings.modules ).sort(); + modules.forEach( function ( moduleName ) { + if ( !defaultModule ) { + defaultModule = moduleName; } + + // Call render function on the current setting module. + languageSettings.initModule( moduleName, defaultModule === moduleName ); } ); }, diff --git a/tests/webfonts.html b/tests/webfonts.html index 0a756453..fbee034d 100644 --- a/tests/webfonts.html +++ b/tests/webfonts.html @@ -40,9 +40,9 @@ $langselector = $( 'select#language' ); function listFonts( fonts ) { - $.merge( fonts, [ 'Sans', 'Serif' ] ); + fonts.push( 'Sans', 'Serif' ); $fontSelector.find( 'option' ).remove(); - $.each( fonts, function ( key, font ) { + fonts.forEach( function ( font ) { $fontSelector.append( $( "" ) .attr( "value", font ).text( font ) ); } ); @@ -50,7 +50,7 @@ } listFonts( fonts ); - $.each( languages, function ( lang, language ) { + languages.forEach( function ( language ) { $langselector.append( $( "" ) .attr( 'value', language ) .text( language + " - " + $.uls.data.getAutonym( language ) ) );