From 1c6568cf687b395ce67a5bbea0e0c87bbe8fb41e Mon Sep 17 00:00:00 2001 From: Arthur Schiwon Date: Wed, 4 Dec 2013 13:14:05 +0100 Subject: [PATCH] LDAP: make unsetting checkboxes from Advanced tab work again, fixes #6143 --- apps/user_ldap/ajax/setConfiguration.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/apps/user_ldap/ajax/setConfiguration.php b/apps/user_ldap/ajax/setConfiguration.php index 94de8835fbc..84acecee5da 100644 --- a/apps/user_ldap/ajax/setConfiguration.php +++ b/apps/user_ldap/ajax/setConfiguration.php @@ -27,6 +27,18 @@ OCP\JSON::checkAppEnabled('user_ldap'); OCP\JSON::callCheck(); $prefix = $_POST['ldap_serverconfig_chooser']; + +// Checkboxes are not submitted, when they are unchecked. Set them manually. +// only legacy checkboxes (Advanced and Expert tab) need to be handled here, +// the Wizard-like tabs handle it on their own +$chkboxes = array('ldap_configuration_active', 'ldap_override_main_server', + 'ldap_nocase', 'ldap_turn_off_cert_check'); +foreach($chkboxes as $boxid) { + if(!isset($_POST[$boxid])) { + $_POST[$boxid] = 0; + } +} + $ldapWrapper = new OCA\user_ldap\lib\LDAP(); $connection = new \OCA\user_ldap\lib\Connection($ldapWrapper, $prefix); $connection->setConfiguration($_POST);