From 8a48b088ed22f23f961da3c0eb9591989f8cc98a Mon Sep 17 00:00:00 2001 From: Arthur Schiwon Date: Wed, 29 Oct 2014 18:52:55 +0100 Subject: [PATCH] on xp'ed mode and switching configurations: save raw mode instead of toggling filter mode in tabs since their status is unknown and dealt with by the Wizard. Fixes #11848 --- apps/user_ldap/js/experiencedAdmin.js | 14 +++----------- apps/user_ldap/js/settings.js | 10 +++++++--- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/apps/user_ldap/js/experiencedAdmin.js b/apps/user_ldap/js/experiencedAdmin.js index fac8dd6470..8d138eecc4 100644 --- a/apps/user_ldap/js/experiencedAdmin.js +++ b/apps/user_ldap/js/experiencedAdmin.js @@ -50,17 +50,9 @@ ExperiencedAdmin.prototype.isExperienced = function() { * switches all LDAP filters from Assisted to Raw mode. */ ExperiencedAdmin.prototype.enableRawMode = function() { - var containers = { - 'toggleRawGroupFilter': '#rawGroupFilterContainer', - 'toggleRawLoginFilter': '#rawLoginFilterContainer', - 'toggleRawUserFilter' : '#rawUserFilterContainer' - }; - - for(var method in containers) { - if($(containers[method]).hasClass('invisible')) { - this.wizard[method](); - } - } + LdapWizard._save({id: 'ldapGroupFilterMode'}, LdapWizard.filterModeRaw); + LdapWizard._save({id: 'ldapUserFilterMode' }, LdapWizard.filterModeRaw); + LdapWizard._save({id: 'ldapLoginFilterMode'}, LdapWizard.filterModeRaw); }; ExperiencedAdmin.prototype.updateUserTab = function(mode) { diff --git a/apps/user_ldap/js/settings.js b/apps/user_ldap/js/settings.js index 1627528200..fa40aba73b 100644 --- a/apps/user_ldap/js/settings.js +++ b/apps/user_ldap/js/settings.js @@ -838,9 +838,10 @@ var LdapWizard = { } }, - onToggleRawFilterConfirmation: function(currentMode, callback) { - if(!LdapWizard.admin.isExperienced() - || currentMode === LdapWizard.filterModeAssisted + onToggleRawFilterConfirmation: function(currentMode, isRawVisible, callback) { + if( !LdapWizard.admin.isExperienced() + || currentMode === LdapWizard.filterModeAssisted + || (LdapWizard.admin.isExperienced() && !isRawVisible) ) { return callback(true); } @@ -855,6 +856,7 @@ var LdapWizard = { toggleRawGroupFilter: function() { LdapWizard.onToggleRawFilterConfirmation( LdapWizard.groupFilter.getMode(), + !$('#rawGroupFilterContainer').hasClass('invisible'), function(confirmed) { if(confirmed !== true) { return; @@ -875,6 +877,7 @@ var LdapWizard = { toggleRawLoginFilter: function() { LdapWizard.onToggleRawFilterConfirmation( LdapWizard.loginFilter.getMode(), + !$('#rawLoginFilterContainer').hasClass('invisible'), function(confirmed) { if(confirmed !== true) { return; @@ -909,6 +912,7 @@ var LdapWizard = { toggleRawUserFilter: function() { LdapWizard.onToggleRawFilterConfirmation( LdapWizard.userFilter.getMode(), + !$('#rawUserFilterContainer').hasClass('invisible'), function(confirmed) { if(confirmed === true) { LdapWizard.blacklistRemove('ldap_userlist_filter');