From 56a70b44e94102cf0732f7ec500d01c86e77e4d9 Mon Sep 17 00:00:00 2001 From: Guilherme Gazzo Date: Thu, 7 Jun 2018 19:20:27 -0300 Subject: [PATCH 1/5] fix open conversation from room info --- .../rocketchat-ui-flextab/client/tabs/userActions.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/rocketchat-ui-flextab/client/tabs/userActions.js b/packages/rocketchat-ui-flextab/client/tabs/userActions.js index 3b9a2096949e..7fdaf32e6cb0 100644 --- a/packages/rocketchat-ui-flextab/client/tabs/userActions.js +++ b/packages/rocketchat-ui-flextab/client/tabs/userActions.js @@ -55,7 +55,12 @@ export const getActions = function({ user, directActions, hideAdminControls }) { }; const canDirectMessage = (username) => { const user = Meteor.user(); - return RocketChat.authz.hasAllPermission('create-d') && user && user.username !== username; + const rid = Session.get('openedRoom'); + return username && (!directActions && rid && RocketChat.models.Subscriptions.findOne( + { + rid + } + ).name !== username) || (directActions && RocketChat.authz.hasAllPermission('create-d') && user && user.username !== username); }; const canMuteUser = () => { return RocketChat.authz.hasAllPermission('mute-user', Session.get('openedRoom')); @@ -99,7 +104,7 @@ export const getActions = function({ user, directActions, hideAdminControls }) { Meteor.call('createDirectMessage', username, success(result => result.rid && FlowRouter.go('direct', { username }, FlowRouter.current().queryParams))) ), condition() { - return (directActions && canDirectMessage(this.username)); + return canDirectMessage(this.username); } }, From aa29ba7fddd438a2e1eb934fe25ec862097f1871 Mon Sep 17 00:00:00 2001 From: Guilherme Gazzo Date: Sun, 10 Jun 2018 16:11:59 -0300 Subject: [PATCH 2/5] Update userActions.js --- packages/rocketchat-ui-flextab/client/tabs/userActions.js | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/packages/rocketchat-ui-flextab/client/tabs/userActions.js b/packages/rocketchat-ui-flextab/client/tabs/userActions.js index 7fdaf32e6cb0..3adca1c5e649 100644 --- a/packages/rocketchat-ui-flextab/client/tabs/userActions.js +++ b/packages/rocketchat-ui-flextab/client/tabs/userActions.js @@ -56,11 +56,7 @@ export const getActions = function({ user, directActions, hideAdminControls }) { const canDirectMessage = (username) => { const user = Meteor.user(); const rid = Session.get('openedRoom'); - return username && (!directActions && rid && RocketChat.models.Subscriptions.findOne( - { - rid - } - ).name !== username) || (directActions && RocketChat.authz.hasAllPermission('create-d') && user && user.username !== username); + return username && (!directActions && rid && RocketChat.models.Subscriptions.findOne({ rid }).name !== username) || (directActions && RocketChat.authz.hasAllPermission('create-d') && user && user.username !== username); }; const canMuteUser = () => { return RocketChat.authz.hasAllPermission('mute-user', Session.get('openedRoom')); From 91676ec3dcc0263ce20c9bfb73c9e00ab2a08af6 Mon Sep 17 00:00:00 2001 From: Guilherme Gazzo Date: Mon, 11 Jun 2018 21:04:05 -0300 Subject: [PATCH 3/5] Update userActions.js --- packages/rocketchat-ui-flextab/client/tabs/userActions.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/rocketchat-ui-flextab/client/tabs/userActions.js b/packages/rocketchat-ui-flextab/client/tabs/userActions.js index 3adca1c5e649..16553493e0e9 100644 --- a/packages/rocketchat-ui-flextab/client/tabs/userActions.js +++ b/packages/rocketchat-ui-flextab/client/tabs/userActions.js @@ -54,9 +54,11 @@ export const getActions = function({ user, directActions, hideAdminControls }) { return RocketChat.authz.hasAllPermission('set-owner', Session.get('openedRoom')); }; const canDirectMessage = (username) => { - const user = Meteor.user(); const rid = Session.get('openedRoom'); - return username && (!directActions && rid && RocketChat.models.Subscriptions.findOne({ rid }).name !== username) || (directActions && RocketChat.authz.hasAllPermission('create-d') && user && user.username !== username); + const subscription = RocketChat.models.Subscriptions.findOne({ rid }); + const canOpenDm = RocketChat.authz.hasAllPermission('create-d') || RocketChat.models.Subscriptions.findOne({ name: unsername }); + const dmIsNotAlreadyOpen = subscription.name !== username; + return canOpenDm && dmIsNotAlreadyOpen; }; const canMuteUser = () => { return RocketChat.authz.hasAllPermission('mute-user', Session.get('openedRoom')); From 85e0a4591ea2fb492ce52820c0d16b1468466fde Mon Sep 17 00:00:00 2001 From: Guilherme Gazzo Date: Mon, 11 Jun 2018 22:54:58 -0300 Subject: [PATCH 4/5] Update userActions.js --- packages/rocketchat-ui-flextab/client/tabs/userActions.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/rocketchat-ui-flextab/client/tabs/userActions.js b/packages/rocketchat-ui-flextab/client/tabs/userActions.js index 16553493e0e9..733320ad0e96 100644 --- a/packages/rocketchat-ui-flextab/client/tabs/userActions.js +++ b/packages/rocketchat-ui-flextab/client/tabs/userActions.js @@ -56,7 +56,7 @@ export const getActions = function({ user, directActions, hideAdminControls }) { const canDirectMessage = (username) => { const rid = Session.get('openedRoom'); const subscription = RocketChat.models.Subscriptions.findOne({ rid }); - const canOpenDm = RocketChat.authz.hasAllPermission('create-d') || RocketChat.models.Subscriptions.findOne({ name: unsername }); + const canOpenDm = RocketChat.authz.hasAllPermission('create-d') || RocketChat.models.Subscriptions.findOne({ name: username }); const dmIsNotAlreadyOpen = subscription.name !== username; return canOpenDm && dmIsNotAlreadyOpen; }; From b993e14e7d8494eb011390eff8491116cd3fdc09 Mon Sep 17 00:00:00 2001 From: Guilherme Gazzo Date: Wed, 13 Jun 2018 16:22:54 -0300 Subject: [PATCH 5/5] fix --- packages/rocketchat-ui-flextab/client/tabs/userActions.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/rocketchat-ui-flextab/client/tabs/userActions.js b/packages/rocketchat-ui-flextab/client/tabs/userActions.js index 733320ad0e96..0430a6f582ef 100644 --- a/packages/rocketchat-ui-flextab/client/tabs/userActions.js +++ b/packages/rocketchat-ui-flextab/client/tabs/userActions.js @@ -57,7 +57,7 @@ export const getActions = function({ user, directActions, hideAdminControls }) { const rid = Session.get('openedRoom'); const subscription = RocketChat.models.Subscriptions.findOne({ rid }); const canOpenDm = RocketChat.authz.hasAllPermission('create-d') || RocketChat.models.Subscriptions.findOne({ name: username }); - const dmIsNotAlreadyOpen = subscription.name !== username; + const dmIsNotAlreadyOpen = subscription && subscription.name !== username; return canOpenDm && dmIsNotAlreadyOpen; }; const canMuteUser = () => {