diff options
author | Lauri Ojansivu <x@xet7.org> | 2019-06-29 10:02:23 -0400 |
---|---|---|
committer | Lauri Ojansivu <x@xet7.org> | 2019-06-29 10:02:23 -0400 |
commit | 31e801cc3985cfa6c93e51e0127deee1d445d748 (patch) | |
tree | 1f49e302836d8b5984dbe65da3c2d237aab21734 /models/users.js | |
parent | a2587f94da0e34d520654a49ba0ebc53893ba5a9 (diff) | |
download | wekan-31e801cc3985cfa6c93e51e0127deee1d445d748.tar.gz wekan-31e801cc3985cfa6c93e51e0127deee1d445d748.tar.bz2 wekan-31e801cc3985cfa6c93e51e0127deee1d445d748.zip |
- [LDAP: Check if email attribute is an array, that has many email addresses](https://github.com/wekan/wekan/pull/2519).
Thanks to tdemaret and xet7 !
Diffstat (limited to 'models/users.js')
-rw-r--r-- | models/users.js | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/models/users.js b/models/users.js index 79b83fe6..08f833b9 100644 --- a/models/users.js +++ b/models/users.js @@ -530,6 +530,9 @@ Meteor.methods({ Meteor.user().setShowCardsCountAt(limit); }, setEmail(email, userId) { + if (Array.isArray(email)) { + email = email.shift(); + } check(email, String); const existingUser = Users.findOne( { 'emails.address': email }, @@ -552,6 +555,9 @@ Meteor.methods({ }, setUsernameAndEmail(username, email, userId) { check(username, String); + if (Array.isArray(email)) { + email = email.shift(); + } check(email, String); check(userId, String); Meteor.call('setUsername', username, userId); @@ -648,7 +654,11 @@ if (Meteor.isServer) { } if (user.services.oidc) { - const email = user.services.oidc.email.toLowerCase(); + let email = user.services.oidc.email; + if (Array.isArray(email)) { + email = email.shift(); + } + email = email.toLowerCase(); user.username = user.services.oidc.username; user.emails = [{ address: email, verified: true }]; const initials = user.services.oidc.fullname |