Merge pull request #11088 from uberbrady/fix_ldap_manager_sync

Only set manager ID when the lookup succeeds.
This commit is contained in:
snipe 2022-05-15 09:45:04 -07:00 committed by GitHub
commit 33c3a5a8ca
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -213,12 +213,14 @@ class LdapSync extends Command
$user->country = $item['country']; $user->country = $item['country'];
$user->department_id = $department->id; $user->department_id = $department->id;
if($item['manager']!= null) { if($item['manager'] != null) {
//Captures only the Canonical Name //Captures only the Canonical Name
$item['manager'] = ltrim($item['manager'], "CN="); $item['manager'] = ltrim($item['manager'], "CN=");
$item['manager'] = substr($item['manager'],0, strpos($item['manager'], ',')); $item['manager'] = substr($item['manager'],0, strpos($item['manager'], ','));
$ldap_manager = User::where('username', $item['manager'])->first(); $ldap_manager = User::where('username', $item['manager'])->first();
$user->manager_id = $ldap_manager->id; if ( $ldap_manager && isset($ldap_manager->id) ) {
$user->manager_id = $ldap_manager->id;
}
} }