diff options
Diffstat (limited to 'api/command_join.go')
-rw-r--r-- | api/command_join.go | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/api/command_join.go b/api/command_join.go index 67c1c1ad1..ba3b0041e 100644 --- a/api/command_join.go +++ b/api/command_join.go @@ -10,23 +10,31 @@ import ( type JoinProvider struct { } +const ( + CMD_JOIN = "join" +) + func init() { RegisterCommandProvider(&JoinProvider{}) } -func (me *JoinProvider) GetCommand() *model.Command { +func (me *JoinProvider) GetTrigger() string { + return CMD_JOIN +} + +func (me *JoinProvider) GetCommand(c *Context) *model.Command { return &model.Command{ - Trigger: "join", + Trigger: CMD_JOIN, AutoComplete: true, - AutoCompleteDesc: "Join the open channel", - AutoCompleteHint: "[channel-name]", - DisplayName: "join", + AutoCompleteDesc: c.T("api.command_join.desc"), + AutoCompleteHint: c.T("api.command_join.hint"), + DisplayName: c.T("api.command_join.name"), } } func (me *JoinProvider) DoCommand(c *Context, channelId string, message string) *model.CommandResponse { if result := <-Srv.Store.Channel().GetMoreChannels(c.Session.TeamId, c.Session.UserId); result.Err != nil { - return &model.CommandResponse{Text: "An error occured while listing channels.", ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL} + return &model.CommandResponse{Text: c.T("api.command_join.list.app_error"), ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL} } else { channels := result.Data.(*model.ChannelList) @@ -35,20 +43,20 @@ func (me *JoinProvider) DoCommand(c *Context, channelId string, message string) if v.Name == message { if v.Type == model.CHANNEL_DIRECT { - return &model.CommandResponse{Text: "An error occured while joining the channel.", ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL} + return &model.CommandResponse{Text: c.T("api.command_join.fail.app_error"), ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL} } JoinChannel(c, v.Id, "") if c.Err != nil { c.Err = nil - return &model.CommandResponse{Text: "An error occured while joining the channel.", ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL} + return &model.CommandResponse{Text: c.T("api.command_join.fail.app_error"), ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL} } - return &model.CommandResponse{GotoLocation: c.GetTeamURL() + "/channels/" + v.Name, Text: "Joined channel.", ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL} + return &model.CommandResponse{GotoLocation: c.GetTeamURL() + "/channels/" + v.Name, Text: c.T("api.command_join.success"), ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL} } } } - return &model.CommandResponse{ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL, Text: "We couldn't find the channel"} + return &model.CommandResponse{ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL, Text: c.T("api.command_join.missing.app_error")} } |