From 27f413d3b4e3d58fc759da45f190c5bf0879088e Mon Sep 17 00:00:00 2001 From: Will Hunt <half-shot@molrams.com> Date: Wed, 22 Feb 2017 22:25:45 +0000 Subject: [PATCH] Fix not returning bot user if the sender does not have a token --- src/discordclientfactory.ts | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/discordclientfactory.ts b/src/discordclientfactory.ts index 0cc6a19..d6e3acd 100644 --- a/src/discordclientfactory.ts +++ b/src/discordclientfactory.ts @@ -37,19 +37,22 @@ export class DiscordClientFactory { return Promise.resolve(this.clients.get(userId)); } return this.store.get_user_token(userId).then((token) => { + if (token === null) { + Promise.resolve(this.botClient); + } client = Bluebird.promisifyAll(new Client({ fetchAllMembers: true, sync: true, })); log.verbose("ClientFactory", "Got user token. Logging in..."); - return client.login(token); - }).then(() => { - log.verbose("ClientFactory", "Logged in. Storing ", userId); - this.clients.set(userId, client); - return Promise.resolve(client); - }).catch((err) => { - log.warn("ClientFactory", `Could not log ${userId} in.`, err); - }) + return client.login(token).then(() => { + log.verbose("ClientFactory", "Logged in. Storing ", userId); + this.clients.set(userId, client); + return Promise.resolve(client); + }).catch((err) => { + log.warn("ClientFactory", `Could not log ${userId} in.`, err); + }) + }); // Get from cache } return Promise.resolve(this.botClient); -- GitLab