From 96f4e35e25919eca0333044c1485f7ce9b2bb69c Mon Sep 17 00:00:00 2001 From: Stefan Zermatten Date: Tue, 13 Nov 2018 08:58:42 +0200 Subject: [PATCH] fixes #187 --- .../views/character/characterSettings/shareDialog.js | 4 ++-- app/lib/functions/shareCharacter.js | 11 +++-------- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/app/client/views/character/characterSettings/shareDialog.js b/app/client/views/character/characterSettings/shareDialog.js index 6574fa84..13ad3e50 100644 --- a/app/client/views/character/characterSettings/shareDialog.js +++ b/app/client/views/character/characterSettings/shareDialog.js @@ -53,7 +53,7 @@ Template.shareDialog.events({ Characters.update(this._id, {$set: {"settings.viewPermission": value}}); }, "input #userNameOrEmailInput": - function(event, instance){ + _.debounce(function(event, instance){ var userName = instance.find("#userNameOrEmailInput").value; instance.userId.set(undefined); Meteor.call("getUserId", userName, function(err, result) { @@ -64,7 +64,7 @@ Template.shareDialog.events({ instance.userId.set(result); } }); - }, + }, 300), "click #shareButton": function(event, instance){ var self = this; var permission = instance.find("#accessLevelMenu").selected; diff --git a/app/lib/functions/shareCharacter.js b/app/lib/functions/shareCharacter.js index dcf94447..d206fc0f 100644 --- a/app/lib/functions/shareCharacter.js +++ b/app/lib/functions/shareCharacter.js @@ -1,14 +1,9 @@ Meteor.methods({ "getUserId": function(username){ if (!username) return; - regex = new RegExp("^" + username + "$", "i") - var user = Meteor.users.findOne( - {$or: [ - {username: username}, - {"emails.address": regex}, - {"services.google.email": regex}, - ]} - ); + if (Meteor.isClient) return; + let user = Accounts.findUserByUsername(username) || + Accounts.findUserByEmail(username); return user && user._id; } });