@@ -34,16 +34,16 @@ |
||
| 34 | 34 | $subject = (string)$_POST['ldap_clear_mapping']; |
| 35 | 35 | $mapping = null; |
| 36 | 36 | if($subject === 'user') { |
| 37 | - $mapping = new UserMapping(\OC::$server->getDatabaseConnection()); |
|
| 37 | + $mapping = new UserMapping(\OC::$server->getDatabaseConnection()); |
|
| 38 | 38 | } else if($subject === 'group') { |
| 39 | - $mapping = new GroupMapping(\OC::$server->getDatabaseConnection()); |
|
| 39 | + $mapping = new GroupMapping(\OC::$server->getDatabaseConnection()); |
|
| 40 | 40 | } |
| 41 | 41 | try { |
| 42 | - if(is_null($mapping) || !$mapping->clear()) { |
|
| 43 | - $l = \OC::$server->getL10N('user_ldap'); |
|
| 44 | - throw new \Exception($l->t('Failed to clear the mappings.')); |
|
| 45 | - } |
|
| 46 | - OCP\JSON::success(); |
|
| 42 | + if(is_null($mapping) || !$mapping->clear()) { |
|
| 43 | + $l = \OC::$server->getL10N('user_ldap'); |
|
| 44 | + throw new \Exception($l->t('Failed to clear the mappings.')); |
|
| 45 | + } |
|
| 46 | + OCP\JSON::success(); |
|
| 47 | 47 | } catch (\Exception $e) { |
| 48 | - OCP\JSON::error(array('message' => $e->getMessage())); |
|
| 48 | + OCP\JSON::error(array('message' => $e->getMessage())); |
|
| 49 | 49 | } |
@@ -37,24 +37,24 @@ discard block |
||
| 37 | 37 | |
| 38 | 38 | |
| 39 | 39 | try { |
| 40 | - $configurationOk = true; |
|
| 41 | - $conf = $connection->getConfiguration(); |
|
| 42 | - if ($conf['ldap_configuration_active'] === '0') { |
|
| 43 | - //needs to be true, otherwise it will also fail with an irritating message |
|
| 44 | - $conf['ldap_configuration_active'] = '1'; |
|
| 45 | - $configurationOk = $connection->setConfiguration($conf); |
|
| 46 | - } |
|
| 47 | - if ($configurationOk) { |
|
| 48 | - //Configuration is okay |
|
| 49 | - /* |
|
| 40 | + $configurationOk = true; |
|
| 41 | + $conf = $connection->getConfiguration(); |
|
| 42 | + if ($conf['ldap_configuration_active'] === '0') { |
|
| 43 | + //needs to be true, otherwise it will also fail with an irritating message |
|
| 44 | + $conf['ldap_configuration_active'] = '1'; |
|
| 45 | + $configurationOk = $connection->setConfiguration($conf); |
|
| 46 | + } |
|
| 47 | + if ($configurationOk) { |
|
| 48 | + //Configuration is okay |
|
| 49 | + /* |
|
| 50 | 50 | * Clossing the session since it won't be used from this point on. There might be a potential |
| 51 | 51 | * race condition if a second request is made: either this request or the other might not |
| 52 | 52 | * contact the LDAP backup server the first time when it should, but there shouldn't be any |
| 53 | 53 | * problem with that other than the extra connection. |
| 54 | 54 | */ |
| 55 | - \OC::$server->getSession()->close(); |
|
| 56 | - if ($connection->bind()) { |
|
| 57 | - /* |
|
| 55 | + \OC::$server->getSession()->close(); |
|
| 56 | + if ($connection->bind()) { |
|
| 57 | + /* |
|
| 58 | 58 | * This shiny if block is an ugly hack to find out whether anonymous |
| 59 | 59 | * bind is possible on AD or not. Because AD happily and constantly |
| 60 | 60 | * replies with success to any anonymous bind request, we need to |
@@ -63,24 +63,24 @@ discard block |
||
| 63 | 63 | * exception by the LDAP wrapper. We catch this. Other cases may |
| 64 | 64 | * pass (like e.g. expected syntax error). |
| 65 | 65 | */ |
| 66 | - try { |
|
| 67 | - $ldapWrapper->read($connection->getConnectionResource(), '', 'objectClass=*', array('dn')); |
|
| 68 | - } catch (\Exception $e) { |
|
| 69 | - if($e->getCode() === 1) { |
|
| 70 | - OCP\JSON::error(array('message' => $l->t('The configuration is invalid: anonymous bind is not allowed.'))); |
|
| 71 | - exit; |
|
| 72 | - } |
|
| 73 | - } |
|
| 74 | - OCP\JSON::success(array('message' |
|
| 75 | - => $l->t('The configuration is valid and the connection could be established!'))); |
|
| 76 | - } else { |
|
| 77 | - OCP\JSON::error(array('message' |
|
| 78 | - => $l->t('The configuration is valid, but the Bind failed. Please check the server settings and credentials.'))); |
|
| 79 | - } |
|
| 80 | - } else { |
|
| 81 | - OCP\JSON::error(array('message' |
|
| 82 | - => $l->t('The configuration is invalid. Please have a look at the logs for further details.'))); |
|
| 83 | - } |
|
| 66 | + try { |
|
| 67 | + $ldapWrapper->read($connection->getConnectionResource(), '', 'objectClass=*', array('dn')); |
|
| 68 | + } catch (\Exception $e) { |
|
| 69 | + if($e->getCode() === 1) { |
|
| 70 | + OCP\JSON::error(array('message' => $l->t('The configuration is invalid: anonymous bind is not allowed.'))); |
|
| 71 | + exit; |
|
| 72 | + } |
|
| 73 | + } |
|
| 74 | + OCP\JSON::success(array('message' |
|
| 75 | + => $l->t('The configuration is valid and the connection could be established!'))); |
|
| 76 | + } else { |
|
| 77 | + OCP\JSON::error(array('message' |
|
| 78 | + => $l->t('The configuration is valid, but the Bind failed. Please check the server settings and credentials.'))); |
|
| 79 | + } |
|
| 80 | + } else { |
|
| 81 | + OCP\JSON::error(array('message' |
|
| 82 | + => $l->t('The configuration is invalid. Please have a look at the logs for further details.'))); |
|
| 83 | + } |
|
| 84 | 84 | } catch (\Exception $e) { |
| 85 | - OCP\JSON::error(array('message' => $e->getMessage())); |
|
| 85 | + OCP\JSON::error(array('message' => $e->getMessage())); |
|
| 86 | 86 | } |
@@ -34,7 +34,7 @@ |
||
| 34 | 34 | $connection = new \OCA\User_LDAP\Connection($ldapWrapper, $prefix); |
| 35 | 35 | $configuration = $connection->getConfiguration(); |
| 36 | 36 | if (isset($configuration['ldap_agent_password']) && $configuration['ldap_agent_password'] !== '') { |
| 37 | - // hide password |
|
| 38 | - $configuration['ldap_agent_password'] = '**PASSWORD SET**'; |
|
| 37 | + // hide password |
|
| 38 | + $configuration['ldap_agent_password'] = '**PASSWORD SET**'; |
|
| 39 | 39 | } |
| 40 | 40 | OCP\JSON::success(array('configuration' => $configuration)); |
@@ -36,11 +36,11 @@ |
||
| 36 | 36 | // only legacy checkboxes (Advanced and Expert tab) need to be handled here, |
| 37 | 37 | // the Wizard-like tabs handle it on their own |
| 38 | 38 | $chkboxes = array('ldap_configuration_active', 'ldap_override_main_server', |
| 39 | - 'ldap_turn_off_cert_check'); |
|
| 39 | + 'ldap_turn_off_cert_check'); |
|
| 40 | 40 | foreach($chkboxes as $boxid) { |
| 41 | - if(!isset($_POST[$boxid])) { |
|
| 42 | - $_POST[$boxid] = 0; |
|
| 43 | - } |
|
| 41 | + if(!isset($_POST[$boxid])) { |
|
| 42 | + $_POST[$boxid] = 0; |
|
| 43 | + } |
|
| 44 | 44 | } |
| 45 | 45 | |
| 46 | 46 | $ldapWrapper = new OCA\User_LDAP\LDAP(); |
@@ -34,8 +34,8 @@ |
||
| 34 | 34 | $prefix = (string)$_POST['ldap_serverconfig_chooser']; |
| 35 | 35 | $helper = new \OCA\User_LDAP\Helper(\OC::$server->getConfig()); |
| 36 | 36 | if($helper->deleteServerConfiguration($prefix)) { |
| 37 | - OCP\JSON::success(); |
|
| 37 | + OCP\JSON::success(); |
|
| 38 | 38 | } else { |
| 39 | - $l = \OC::$server->getL10N('user_ldap'); |
|
| 40 | - OCP\JSON::error(array('message' => $l->t('Failed to delete the server configuration'))); |
|
| 39 | + $l = \OC::$server->getL10N('user_ldap'); |
|
| 40 | + OCP\JSON::error(array('message' => $l->t('Failed to delete the server configuration'))); |
|
| 41 | 41 | } |
@@ -33,13 +33,13 @@ discard block |
||
| 33 | 33 | $l = \OC::$server->getL10N('user_ldap'); |
| 34 | 34 | |
| 35 | 35 | if(!isset($_POST['action'])) { |
| 36 | - \OCP\JSON::error(array('message' => $l->t('No action specified'))); |
|
| 36 | + \OCP\JSON::error(array('message' => $l->t('No action specified'))); |
|
| 37 | 37 | } |
| 38 | 38 | $action = (string)$_POST['action']; |
| 39 | 39 | |
| 40 | 40 | |
| 41 | 41 | if(!isset($_POST['ldap_serverconfig_chooser'])) { |
| 42 | - \OCP\JSON::error(array('message' => $l->t('No configuration specified'))); |
|
| 42 | + \OCP\JSON::error(array('message' => $l->t('No configuration specified'))); |
|
| 43 | 43 | } |
| 44 | 44 | $prefix = (string)$_POST['ldap_serverconfig_chooser']; |
| 45 | 45 | |
@@ -52,90 +52,90 @@ discard block |
||
| 52 | 52 | $con->setIgnoreValidation(true); |
| 53 | 53 | |
| 54 | 54 | $userManager = new \OCA\User_LDAP\User\Manager( |
| 55 | - \OC::$server->getConfig(), |
|
| 56 | - new \OCA\User_LDAP\FilesystemHelper(), |
|
| 57 | - new \OCA\User_LDAP\LogWrapper(), |
|
| 58 | - \OC::$server->getAvatarManager(), |
|
| 59 | - new \OCP\Image(), |
|
| 60 | - \OC::$server->getDatabaseConnection(), |
|
| 61 | - \OC::$server->getUserManager()); |
|
| 55 | + \OC::$server->getConfig(), |
|
| 56 | + new \OCA\User_LDAP\FilesystemHelper(), |
|
| 57 | + new \OCA\User_LDAP\LogWrapper(), |
|
| 58 | + \OC::$server->getAvatarManager(), |
|
| 59 | + new \OCP\Image(), |
|
| 60 | + \OC::$server->getDatabaseConnection(), |
|
| 61 | + \OC::$server->getUserManager()); |
|
| 62 | 62 | |
| 63 | 63 | $access = new \OCA\User_LDAP\Access($con, $ldapWrapper, $userManager, new \OCA\User_LDAP\Helper( |
| 64 | - \OC::$server->getConfig() |
|
| 64 | + \OC::$server->getConfig() |
|
| 65 | 65 | )); |
| 66 | 66 | |
| 67 | 67 | $wizard = new \OCA\User_LDAP\Wizard($configuration, $ldapWrapper, $access); |
| 68 | 68 | |
| 69 | 69 | switch($action) { |
| 70 | - case 'guessPortAndTLS': |
|
| 71 | - case 'guessBaseDN': |
|
| 72 | - case 'detectEmailAttribute': |
|
| 73 | - case 'detectUserDisplayNameAttribute': |
|
| 74 | - case 'determineGroupMemberAssoc': |
|
| 75 | - case 'determineUserObjectClasses': |
|
| 76 | - case 'determineGroupObjectClasses': |
|
| 77 | - case 'determineGroupsForUsers': |
|
| 78 | - case 'determineGroupsForGroups': |
|
| 79 | - case 'determineAttributes': |
|
| 80 | - case 'getUserListFilter': |
|
| 81 | - case 'getUserLoginFilter': |
|
| 82 | - case 'getGroupFilter': |
|
| 83 | - case 'countUsers': |
|
| 84 | - case 'countGroups': |
|
| 85 | - case 'countInBaseDN': |
|
| 86 | - try { |
|
| 87 | - $result = $wizard->$action(); |
|
| 88 | - if($result !== false) { |
|
| 89 | - OCP\JSON::success($result->getResultArray()); |
|
| 90 | - exit; |
|
| 91 | - } |
|
| 92 | - } catch (\Exception $e) { |
|
| 93 | - \OCP\JSON::error(array('message' => $e->getMessage(), 'code' => $e->getCode())); |
|
| 94 | - exit; |
|
| 95 | - } |
|
| 96 | - \OCP\JSON::error(); |
|
| 97 | - exit; |
|
| 98 | - break; |
|
| 70 | + case 'guessPortAndTLS': |
|
| 71 | + case 'guessBaseDN': |
|
| 72 | + case 'detectEmailAttribute': |
|
| 73 | + case 'detectUserDisplayNameAttribute': |
|
| 74 | + case 'determineGroupMemberAssoc': |
|
| 75 | + case 'determineUserObjectClasses': |
|
| 76 | + case 'determineGroupObjectClasses': |
|
| 77 | + case 'determineGroupsForUsers': |
|
| 78 | + case 'determineGroupsForGroups': |
|
| 79 | + case 'determineAttributes': |
|
| 80 | + case 'getUserListFilter': |
|
| 81 | + case 'getUserLoginFilter': |
|
| 82 | + case 'getGroupFilter': |
|
| 83 | + case 'countUsers': |
|
| 84 | + case 'countGroups': |
|
| 85 | + case 'countInBaseDN': |
|
| 86 | + try { |
|
| 87 | + $result = $wizard->$action(); |
|
| 88 | + if($result !== false) { |
|
| 89 | + OCP\JSON::success($result->getResultArray()); |
|
| 90 | + exit; |
|
| 91 | + } |
|
| 92 | + } catch (\Exception $e) { |
|
| 93 | + \OCP\JSON::error(array('message' => $e->getMessage(), 'code' => $e->getCode())); |
|
| 94 | + exit; |
|
| 95 | + } |
|
| 96 | + \OCP\JSON::error(); |
|
| 97 | + exit; |
|
| 98 | + break; |
|
| 99 | 99 | |
| 100 | - case 'testLoginName': { |
|
| 101 | - try { |
|
| 102 | - $loginName = $_POST['ldap_test_loginname']; |
|
| 103 | - $result = $wizard->$action($loginName); |
|
| 104 | - if($result !== false) { |
|
| 105 | - OCP\JSON::success($result->getResultArray()); |
|
| 106 | - exit; |
|
| 107 | - } |
|
| 108 | - } catch (\Exception $e) { |
|
| 109 | - \OCP\JSON::error(array('message' => $e->getMessage())); |
|
| 110 | - exit; |
|
| 111 | - } |
|
| 112 | - \OCP\JSON::error(); |
|
| 113 | - exit; |
|
| 114 | - break; |
|
| 115 | - } |
|
| 100 | + case 'testLoginName': { |
|
| 101 | + try { |
|
| 102 | + $loginName = $_POST['ldap_test_loginname']; |
|
| 103 | + $result = $wizard->$action($loginName); |
|
| 104 | + if($result !== false) { |
|
| 105 | + OCP\JSON::success($result->getResultArray()); |
|
| 106 | + exit; |
|
| 107 | + } |
|
| 108 | + } catch (\Exception $e) { |
|
| 109 | + \OCP\JSON::error(array('message' => $e->getMessage())); |
|
| 110 | + exit; |
|
| 111 | + } |
|
| 112 | + \OCP\JSON::error(); |
|
| 113 | + exit; |
|
| 114 | + break; |
|
| 115 | + } |
|
| 116 | 116 | |
| 117 | - case 'save': |
|
| 118 | - $key = isset($_POST['cfgkey']) ? $_POST['cfgkey'] : false; |
|
| 119 | - $val = isset($_POST['cfgval']) ? $_POST['cfgval'] : null; |
|
| 120 | - if($key === false || is_null($val)) { |
|
| 121 | - \OCP\JSON::error(array('message' => $l->t('No data specified'))); |
|
| 122 | - exit; |
|
| 123 | - } |
|
| 124 | - $cfg = array($key => $val); |
|
| 125 | - $setParameters = array(); |
|
| 126 | - $configuration->setConfiguration($cfg, $setParameters); |
|
| 127 | - if(!in_array($key, $setParameters)) { |
|
| 128 | - \OCP\JSON::error(array('message' => $l->t($key. |
|
| 129 | - ' Could not set configuration %s', $setParameters[0]))); |
|
| 130 | - exit; |
|
| 131 | - } |
|
| 132 | - $configuration->saveConfiguration(); |
|
| 133 | - //clear the cache on save |
|
| 134 | - $connection = new \OCA\User_LDAP\Connection($ldapWrapper, $prefix); |
|
| 135 | - $connection->clearCache(); |
|
| 136 | - OCP\JSON::success(); |
|
| 137 | - break; |
|
| 138 | - default: |
|
| 139 | - \OCP\JSON::error(array('message' => $l->t('Action does not exist'))); |
|
| 140 | - break; |
|
| 117 | + case 'save': |
|
| 118 | + $key = isset($_POST['cfgkey']) ? $_POST['cfgkey'] : false; |
|
| 119 | + $val = isset($_POST['cfgval']) ? $_POST['cfgval'] : null; |
|
| 120 | + if($key === false || is_null($val)) { |
|
| 121 | + \OCP\JSON::error(array('message' => $l->t('No data specified'))); |
|
| 122 | + exit; |
|
| 123 | + } |
|
| 124 | + $cfg = array($key => $val); |
|
| 125 | + $setParameters = array(); |
|
| 126 | + $configuration->setConfiguration($cfg, $setParameters); |
|
| 127 | + if(!in_array($key, $setParameters)) { |
|
| 128 | + \OCP\JSON::error(array('message' => $l->t($key. |
|
| 129 | + ' Could not set configuration %s', $setParameters[0]))); |
|
| 130 | + exit; |
|
| 131 | + } |
|
| 132 | + $configuration->saveConfiguration(); |
|
| 133 | + //clear the cache on save |
|
| 134 | + $connection = new \OCA\User_LDAP\Connection($ldapWrapper, $prefix); |
|
| 135 | + $connection->clearCache(); |
|
| 136 | + OCP\JSON::success(); |
|
| 137 | + break; |
|
| 138 | + default: |
|
| 139 | + \OCP\JSON::error(array('message' => $l->t('Action does not exist'))); |
|
| 140 | + break; |
|
| 141 | 141 | } |
@@ -38,12 +38,12 @@ |
||
| 38 | 38 | |
| 39 | 39 | $newConfig = new \OCA\User_LDAP\Configuration($nk, false); |
| 40 | 40 | if(isset($_POST['copyConfig'])) { |
| 41 | - $originalConfig = new \OCA\User_LDAP\Configuration($_POST['copyConfig']); |
|
| 42 | - $newConfig->setConfiguration($originalConfig->getConfiguration()); |
|
| 41 | + $originalConfig = new \OCA\User_LDAP\Configuration($_POST['copyConfig']); |
|
| 42 | + $newConfig->setConfiguration($originalConfig->getConfiguration()); |
|
| 43 | 43 | } else { |
| 44 | - $configuration = new \OCA\User_LDAP\Configuration($nk, false); |
|
| 45 | - $newConfig->setConfiguration($configuration->getDefaults()); |
|
| 46 | - $resultData['defaults'] = $configuration->getDefaults(); |
|
| 44 | + $configuration = new \OCA\User_LDAP\Configuration($nk, false); |
|
| 45 | + $newConfig->setConfiguration($configuration->getDefaults()); |
|
| 46 | + $resultData['defaults'] = $configuration->getDefaults(); |
|
| 47 | 47 | } |
| 48 | 48 | $newConfig->saveConfiguration(); |
| 49 | 49 | |
@@ -29,12 +29,12 @@ |
||
| 29 | 29 | */ |
| 30 | 30 | class GroupMapping extends AbstractMapping { |
| 31 | 31 | |
| 32 | - /** |
|
| 33 | - * returns the DB table name which holds the mappings |
|
| 34 | - * @return string |
|
| 35 | - */ |
|
| 36 | - protected function getTableName() { |
|
| 37 | - return '*PREFIX*ldap_group_mapping'; |
|
| 38 | - } |
|
| 32 | + /** |
|
| 33 | + * returns the DB table name which holds the mappings |
|
| 34 | + * @return string |
|
| 35 | + */ |
|
| 36 | + protected function getTableName() { |
|
| 37 | + return '*PREFIX*ldap_group_mapping'; |
|
| 38 | + } |
|
| 39 | 39 | |
| 40 | 40 | } |
@@ -29,12 +29,12 @@ |
||
| 29 | 29 | */ |
| 30 | 30 | class UserMapping extends AbstractMapping { |
| 31 | 31 | |
| 32 | - /** |
|
| 33 | - * returns the DB table name which holds the mappings |
|
| 34 | - * @return string |
|
| 35 | - */ |
|
| 36 | - protected function getTableName() { |
|
| 37 | - return '*PREFIX*ldap_user_mapping'; |
|
| 38 | - } |
|
| 32 | + /** |
|
| 33 | + * returns the DB table name which holds the mappings |
|
| 34 | + * @return string |
|
| 35 | + */ |
|
| 36 | + protected function getTableName() { |
|
| 37 | + return '*PREFIX*ldap_user_mapping'; |
|
| 38 | + } |
|
| 39 | 39 | |
| 40 | 40 | } |