} catch (\Exception $e) { \OCP\JSON::error(array('message' => $e->getMessage())); exit; } \OCP\JSON::error(); exit; break; case 'save': $key = isset($_POST['cfgkey']) ? $_POST['cfgkey'] : false; $val = isset($_POST['cfgval']) ? $_POST['cfgval'] : null; if ($key === false || is_null($val)) { \OCP\JSON::error(array('message' => $l->t('No data specified'))); exit; } $cfg = array($key => $val); $setParameters = array(); $configuration->setConfiguration($cfg, $setParameters); if (!in_array($key, $setParameters)) { \OCP\JSON::error(array('message' => $l->t($key . ' Could not set configuration %s', $setParameters[0]))); exit; } $configuration->saveConfiguration(); //clear the cache on save $connection = new \OCA\user_ldap\lib\Connection($ldapWrapper, $prefix); $connection->clearCache(); OCP\JSON::success(); break; default: \OCP\JSON::error(array('message' => $l->t('Action does not exist'))); break; }
OCP\Config::setAppValue('user_ldap', $param, $value); } else { OCP\Config::setAppValue('user_ldap', $param, $_POST[$param]); } } elseif ('ldap_tls' == $param) { // unchecked checkboxes are not included in the post paramters OCP\Config::setAppValue('user_ldap', $param, 0); } elseif ('ldap_nocase' == $param) { OCP\Config::setAppValue('user_ldap', $param, 0); } elseif ('ldap_turn_off_cert_check' == $param) { OCP\Config::setAppValue('user_ldap', $param, 0); } } if ($clearCache) { $ldap = new \OCA\user_ldap\lib\Connection('user_ldap'); $ldap->clearCache(); } } // fill template $tmpl = new OCP\Template('user_ldap', 'settings'); foreach ($params as $param) { $value = OCP\Config::getAppValue('user_ldap', $param, ''); $tmpl->assign($param, $value); } // settings with default values $tmpl->assign('ldap_port', OCP\Config::getAppValue('user_ldap', 'ldap_port', '389')); $tmpl->assign('ldap_display_name', OCP\Config::getAppValue('user_ldap', 'ldap_display_name', 'uid')); $tmpl->assign('ldap_group_display_name', OCP\Config::getAppValue('user_ldap', 'ldap_group_display_name', 'cn')); $tmpl->assign('ldap_group_member_assoc_attribute', OCP\Config::getAppValue('user_ldap', 'ldap_group_member_assoc_attribute', 'uniqueMember')); $tmpl->assign('ldap_agent_password', base64_decode(OCP\Config::getAppValue('user_ldap', 'ldap_agent_password'))); $tmpl->assign('ldap_cache_ttl', OCP\Config::getAppValue('user_ldap', 'ldap_cache_ttl', '600'));