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
This commit is contained in:
@@ -71,22 +71,24 @@
|
|||||||
render: function () {
|
render: function () {
|
||||||
// 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.
|
||||||
var modules = $.fn.languagesettings.modules;
|
var modules = $.fn.languagesettings.modules;
|
||||||
var firstModule = modules[this.options.defaultModule];
|
var defaultModule = this.options.defaultModule;
|
||||||
for ( var moduleName in modules ) {
|
for ( var moduleName in modules ) {
|
||||||
if ( modules.hasOwnProperty( moduleName ) ) {
|
if ( modules.hasOwnProperty( moduleName ) ) {
|
||||||
if ( !firstModule ) {
|
if ( !defaultModule ) {
|
||||||
firstModule = new modules[moduleName]( this );
|
defaultModule = moduleName;
|
||||||
}
|
}
|
||||||
// Call render function on the current setting module.
|
// 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 $settingsMenuItems = this.$window.find( ".settings-menu-items" );
|
||||||
var module = new $.fn.languagesettings.modules[moduleName]( this );
|
var module = new $.fn.languagesettings.modules[moduleName]( this );
|
||||||
var $settingsTitle = $( "<div>" )
|
var $settingsTitle = $( "<div>" )
|
||||||
@@ -109,6 +111,11 @@
|
|||||||
module.render();
|
module.render();
|
||||||
$( this ).addClass( 'active' );
|
$( this ).addClass( 'active' );
|
||||||
} );
|
} );
|
||||||
|
|
||||||
|
if ( active ) {
|
||||||
|
module.render();
|
||||||
|
$settingsLink.addClass( 'active' );
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
show: function () {
|
show: function () {
|
||||||
|
|||||||
Reference in New Issue
Block a user