sets user filters to raw mode when marking user as experienced

This commit is contained in:
Arthur Schiwon 2014-10-07 17:28:09 +02:00
parent efd940133b
commit 3ff4c8e3fc
3 changed files with 66 additions and 0 deletions

View File

@ -0,0 +1,59 @@
/**
* Copyright (c) 2014, Arthur Schiwon <blizzz@owncloud.com>
* This file is licensed under the Affero General Public License version 3 or later.
* See the COPYING-README file.
*/
/**
* controls behaviour depend on whether the admin is experienced in LDAP or not.
*
* @class
* @param {object} wizard the LDAP Wizard object
* @param {boolean} initialState whether the admin is experienced or not
*/
function ExperiencedAdmin(wizard, initialState) {
this.wizard = wizard;
this.isExperienced = false;
}
/**
* toggles whether the admin is an experienced one or not
*
* @param {boolean} whether the admin is experienced or not
*/
ExperiencedAdmin.prototype.toggle = function(isExperienced) {
this.isExperienced = isExperienced;
if(this.isExperienced) {
this.enableRawMode();
}
};
/**
* answers whether the admin is an experienced one or not
*
* @return {boolean} whether the admin is experienced or not
*/
ExperiencedAdmin.prototype.isExperienced = function() {
return this.isExperienced;
};
/**
* switches all LDAP filters from Assisted to Raw mode.
*/
ExperiencedAdmin.prototype.enableRawMode = function () {
containers = {
'toggleRawUserFilter' : '#rawGroupFilterContainer',
'toggleRawLoginFilter': '#rawLoginFilterContainer',
'toggleRawUserFilter' : '#rawUserFilterContainer'
};
// containers.forEach(function(container, method) {
for(method in containers) {
if($(containers[method]).hasClass('invisible')) {
this.wizard[method]();
}
};
};

View File

@ -931,4 +931,10 @@ $(document).ready(function() {
LdapConfiguration.refreshConfig();
}
});
expAdminCB = $('#ldap_experienced_admin');
LdapWizard.admin = new ExperiencedAdmin(LdapWizard, expAdminCB.is(':checked'));
expAdminCB.change(function() {
LdapWizard.admin.toggle($(this).is(':checked'));
});
});

View File

@ -26,6 +26,7 @@
OC_Util::checkAdminUser();
OCP\Util::addScript('user_ldap', 'ldapFilter');
OCP\Util::addScript('user_ldap', 'experiencedAdmin');
OCP\Util::addScript('user_ldap', 'settings');
OCP\Util::addScript('core', 'jquery.multiselect');
OCP\Util::addStyle('user_ldap', 'settings');