Skip to content

Commit

Permalink
Prevent setting email and triggering events at login time (#25531)
Browse files Browse the repository at this point in the history
Whenever an LDAP user also has an email address defined in LDAP, the
LDAP code will try and update the email address of the locally known
user. This happens at login time or every time the user's LDAP
attributes are processed.

There is code listening to the email setting hook which updates the
system address book, which also will trigger FS setup due to avatars
and other things.

This fix only sets the email address when really necessary.
  • Loading branch information
Vincent Petry authored and DeepDiver1975 committed Jul 26, 2016
1 parent e5c22c3 commit 53938bd
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion apps/user_ldap/lib/user/user.php
Original file line number Diff line number Diff line change
Expand Up @@ -433,7 +433,10 @@ public function updateEmail($valueFromLDAP = null) {
}
if(!is_null($email)) {
$user = $this->userManager->get($this->uid);
$user->setEMailAddress($email);
$currentEmail = $user->getEMailAddress();
if ($currentEmail !== $email) {
$user->setEMailAddress($email);
}
}
}

Expand Down

0 comments on commit 53938bd

Please sign in to comment.