From 805482d9cd15cfdfe42f8f9df5eaa84f1e70130d Mon Sep 17 00:00:00 2001 From: Santhosh Thottingal Date: Fri, 7 Sep 2012 17:25:02 +0530 Subject: [PATCH] Fix Bug 39529 - Display settings section should be selected by default * add a parameter acitve to renderModule so that it is highlighted and active * move the default module render call to renderModule method Change-Id: I5dca8586dddf1065b4e85642a40c3558f0b6586b --- resources/js/ext.uls.languagesettings.js | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/resources/js/ext.uls.languagesettings.js b/resources/js/ext.uls.languagesettings.js index 973e3820..db9aea29 100644 --- a/resources/js/ext.uls.languagesettings.js +++ b/resources/js/ext.uls.languagesettings.js @@ -71,22 +71,24 @@ render: function () { // Get the name of all registered modules and list them in left side menu. var modules = $.fn.languagesettings.modules; - var firstModule = modules[this.options.defaultModule]; + var defaultModule = this.options.defaultModule; for ( var moduleName in modules ) { if ( modules.hasOwnProperty( moduleName ) ) { - if ( !firstModule ) { - firstModule = new modules[moduleName]( this ); + if ( !defaultModule ) { + defaultModule = moduleName; } // Call render function on the current setting module. - this.renderModule( moduleName ); + this.renderModule( moduleName, defaultModule === moduleName ); } } - - // Show the default module - firstModule.render(); }, - renderModule: function ( moduleName ) { + /** + * Render the link and settings area for a language setting module. + * @param moduleName String Name of the setting module + * @param active boolean Make this module active and show by default + */ + renderModule: function ( moduleName, active ) { var $settingsMenuItems = this.$window.find( ".settings-menu-items" ); var module = new $.fn.languagesettings.modules[moduleName]( this ); var $settingsTitle = $( "
" ) @@ -109,6 +111,11 @@ module.render(); $( this ).addClass( 'active' ); } ); + + if ( active ) { + module.render(); + $settingsLink.addClass( 'active' ); + } }, show: function () {