summaryrefslogtreecommitdiffstats
path: root/app/command_join.go
diff options
context:
space:
mode:
authorJoram Wilander <jwawilander@gmail.com>2017-06-05 11:57:50 -0400
committerGitHub <noreply@github.com>2017-06-05 11:57:50 -0400
commit0f3bd85b8dddc6805e260a9d19cadcc603a12e17 (patch)
tree39288b866b71c610679c0a6ae1baab390b54468e /app/command_join.go
parentb0f32e3c1928d1a125b9f7bdfd3dcbf2fede65ab (diff)
downloadchat-0f3bd85b8dddc6805e260a9d19cadcc603a12e17.tar.gz
chat-0f3bd85b8dddc6805e260a9d19cadcc603a12e17.tar.bz2
chat-0f3bd85b8dddc6805e260a9d19cadcc603a12e17.zip
Allow switching to private channels with /join command (#6579)
Diffstat (limited to 'app/command_join.go')
-rw-r--r--app/command_join.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/app/command_join.go b/app/command_join.go
index 9ad3682a1..caacb8c7e 100644
--- a/app/command_join.go
+++ b/app/command_join.go
@@ -40,8 +40,12 @@ func (me *JoinProvider) DoCommand(args *model.CommandArgs, message string) *mode
channel := result.Data.(*model.Channel)
if channel.Name == message {
+ allowed := false
+ if (channel.Type == model.CHANNEL_PRIVATE && SessionHasPermissionToChannel(args.Session, channel.Id, model.PERMISSION_READ_CHANNEL)) || channel.Type == model.CHANNEL_OPEN {
+ allowed = true
+ }
- if channel.Type != model.CHANNEL_OPEN {
+ if !allowed {
return &model.CommandResponse{Text: args.T("api.command_join.fail.app_error"), ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL}
}