diff --git a/app/components/settingsAuthentication/settingsAuthenticationController.js b/app/components/settingsAuthentication/settingsAuthenticationController.js index 36c266dc7..bf282f155 100644 --- a/app/components/settingsAuthentication/settingsAuthenticationController.js +++ b/app/components/settingsAuthentication/settingsAuthenticationController.js @@ -22,8 +22,8 @@ function ($q, $scope, Notifications, SettingsService, FileUploadService) { $scope.LDAPSettings.SearchSettings.splice(index, 1); }; - $scope.LDAPConnectivityCheck = function() { - var settings = $scope.settings; + $scope.LDAPConnectivityCheck = function() { + var settings = $scope.settings; var TLSCAFile = $scope.formValues.TLSCACert !== settings.LDAPSettings.TLSConfig.TLSCACert ? $scope.formValues.TLSCACert : null; var uploadRequired = ($scope.LDAPSettings.TLSConfig.TLS || $scope.LDAPSettings.StartTLS) && !$scope.LDAPSettings.TLSConfig.TLSSkipVerify; @@ -32,6 +32,7 @@ function ($q, $scope, Notifications, SettingsService, FileUploadService) { $scope.state.connectivityCheckInProgress = true; $q.when(!uploadRequired || FileUploadService.uploadLDAPTLSFiles(TLSCAFile, null, null)) .then(function success(data) { + addLDAPDefaultPort(settings, $scope.LDAPSettings.TLSConfig.TLS); return SettingsService.checkLDAPConnectivity(settings); }) .then(function success(data) { @@ -60,6 +61,7 @@ function ($q, $scope, Notifications, SettingsService, FileUploadService) { $scope.state.actionInProgress = true; $q.when(!uploadRequired || FileUploadService.uploadLDAPTLSFiles(TLSCAFile, null, null)) .then(function success(data) { + addLDAPDefaultPort(settings, $scope.LDAPSettings.TLSConfig.TLS); return SettingsService.update(settings); }) .then(function success(data) { @@ -74,6 +76,13 @@ function ($q, $scope, Notifications, SettingsService, FileUploadService) { }); }; + // Add default port if :port is not defined in URL + function addLDAPDefaultPort(settings, tlsEnabled) { + if (settings.LDAPSettings.URL.indexOf(':') === -1) { + settings.LDAPSettings.URL += tlsEnabled ? ':636' : ':389'; + } + } + function initView() { SettingsService.settings() .then(function success(data) {