2013-01-20 12:02:44 -05:00
|
|
|
<?php
|
2024-05-29 05:32:54 -04:00
|
|
|
|
2024-10-10 06:40:31 -04:00
|
|
|
use OCA\User_LDAP\LDAP;
|
|
|
|
|
|
2013-01-20 12:02:44 -05:00
|
|
|
/**
|
2024-05-29 05:32:54 -04:00
|
|
|
* SPDX-FileCopyrightText: 2018-2024 Nextcloud GmbH and Nextcloud contributors
|
|
|
|
|
* SPDX-FileCopyrightText: 2016 ownCloud, Inc.
|
|
|
|
|
* SPDX-License-Identifier: AGPL-3.0-only
|
2013-01-20 12:02:44 -05:00
|
|
|
*/
|
|
|
|
|
// Check user and app status
|
2018-03-22 08:19:29 -04:00
|
|
|
\OC_JSON::checkAdminUser();
|
|
|
|
|
\OC_JSON::checkAppEnabled('user_ldap');
|
|
|
|
|
\OC_JSON::callCheck();
|
2013-01-20 12:02:44 -05:00
|
|
|
|
2015-02-13 07:33:20 -05:00
|
|
|
$prefix = (string)$_POST['ldap_serverconfig_chooser'];
|
2013-12-04 07:14:05 -05:00
|
|
|
|
|
|
|
|
// 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
|
2020-03-26 04:30:18 -04:00
|
|
|
$chkboxes = ['ldap_configuration_active', 'ldap_override_main_server',
|
2020-04-09 03:22:29 -04:00
|
|
|
'ldap_turn_off_cert_check'];
|
2013-12-04 07:14:05 -05:00
|
|
|
foreach ($chkboxes as $boxid) {
|
|
|
|
|
if (!isset($_POST[$boxid])) {
|
|
|
|
|
$_POST[$boxid] = 0;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2024-10-10 06:40:31 -04:00
|
|
|
$ldapWrapper = new LDAP();
|
2016-05-12 10:35:33 -04:00
|
|
|
$connection = new \OCA\User_LDAP\Connection($ldapWrapper, $prefix);
|
2013-01-20 12:02:44 -05:00
|
|
|
$connection->setConfiguration($_POST);
|
|
|
|
|
$connection->saveConfiguration();
|
2018-03-22 08:19:29 -04:00
|
|
|
\OC_JSON::success();
|