diff --git a/inc/drivers_ldap.php b/inc/drivers_ldap.php index 82ef6af0..017537ea 100644 --- a/inc/drivers_ldap.php +++ b/inc/drivers_ldap.php @@ -627,16 +627,19 @@ function sync_LDAP_groups(){ foreach ( $mapping as $field => $value ) { dbg_error_log( "LDAP", "Considering copying %s", $field ); - if ( isset($validUserFields[$field]) ) { + if ( isset($validUserFields[$field]) && isset($ldap_values[$value]) ) { $user->{$field} = $ldap_values[$value]; dbg_error_log( "LDAP", "Setting usr->%s to %s from LDAP field %s", $field, $ldap_values[$value], $value ); } } - if ($user->fullname == "") { + // A sane default for the fullname is the group name. + if (! isset($user->fullname) || $user->fullname == "") { $user->fullname = $group; } + // A sane default for the displayname is the fullname (which might be + // the group name). if (! isset($user->displayname) || $user->displayname == "") { $user->displayname = $user->fullname; }