From 79b381bca31f04bded15eb67c8b75fdcee4d0767 Mon Sep 17 00:00:00 2001 From: "Pierre H. Lehnen" Date: Tue, 26 Jun 2018 09:39:09 -0300 Subject: [PATCH] Fixes an error triggered by the new users login in using CAS trying to subscribe to general channel twice (#11257) --- packages/rocketchat-cas/server/cas_server.js | 21 +++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/packages/rocketchat-cas/server/cas_server.js b/packages/rocketchat-cas/server/cas_server.js index ca89e1f0f6a89..492700a134f36 100644 --- a/packages/rocketchat-cas/server/cas_server.js +++ b/packages/rocketchat-cas/server/cas_server.js @@ -231,15 +231,18 @@ Accounts.registerLoginHandler(function(options) { if (!room) { room = RocketChat.models.Rooms.createWithIdTypeAndName(Random.id(), 'c', room_name); } - RocketChat.models.Rooms.addUsernameByName(room_name, result.username); - RocketChat.models.Subscriptions.createWithRoomAndUser(room, user, { - ts: new Date(), - open: true, - alert: true, - unread: 1, - userMentions: 1, - groupMentions: 0 - }); + + if (!RocketChat.models.Subscriptions.findOneByRoomIdAndUserId(room._id, userId)) { + RocketChat.models.Rooms.addUsernameByName(room_name, result.username); + RocketChat.models.Subscriptions.createWithRoomAndUser(room, user, { + ts: new Date(), + open: true, + alert: true, + unread: 1, + userMentions: 1, + groupMentions: 0 + }); + } } }); }