]> BookStack Code Mirror - bookstack/blobdiff - app/Services/LdapService.php
Merge branch 'master' into translations
[bookstack] / app / Services / LdapService.php
index 84883b09a20fa9422956578fa48d6909e7f14682..40b24f1419c06e60cc372dae0b57fd1e621fe70a 100644 (file)
@@ -46,7 +46,7 @@ class LdapService
 
         $user = $users[0];
         return [
-            'uid'   => $user['uid'][0],
+            'uid'   => (isset($user['uid'])) ? $user['uid'][0] : $user['dn'],
             'name'  => $user['cn'][0],
             'dn'    => $user['dn'],
             'email' => (isset($user['mail'])) ? $user['mail'][0] : null
@@ -94,7 +94,7 @@ class LdapService
             $ldapBind = $this->ldap->bind($connection, $ldapDn, $ldapPass);
         }
 
-        if (!$ldapBind) throw new LdapException('LDAP access failed using ' . ($isAnonymous ? ' anonymous bind.' : ' given dn & pass details'));
+        if (!$ldapBind) throw new LdapException(($isAnonymous ? trans('errors.ldap_fail_anonymous') : trans('errors.ldap_fail_authed')));
     }
 
     /**
@@ -109,7 +109,7 @@ class LdapService
 
         // Check LDAP extension in installed
         if (!function_exists('ldap_connect') && config('app.env') !== 'testing') {
-            throw new LdapException('LDAP PHP extension not installed');
+            throw new LdapException(trans('errors.ldap_extension_not_installed'));
         }
 
         // Get port from server string if specified.
@@ -117,12 +117,12 @@ class LdapService
         $ldapConnection = $this->ldap->connect($ldapServer[0], count($ldapServer) > 1 ? $ldapServer[1] : 389);
 
         if ($ldapConnection === false) {
-            throw new LdapException('Cannot connect to ldap server, Initial connection failed');
+            throw new LdapException(trans('errors.ldap_cannot_connect'));
         }
 
         // Set any required options
         if ($this->config['version']) {
-            $this->ldap->setOption($ldapConnection, LDAP_OPT_PROTOCOL_VERSION, $this->config['version']);
+            $this->ldap->setVersion($ldapConnection, $this->config['version']);
         }
 
         $this->ldapConnection = $ldapConnection;