diff options
author | Harrison Healey <harrisonmhealey@gmail.com> | 2016-04-05 09:29:01 -0400 |
---|---|---|
committer | Christopher Speller <crspeller@gmail.com> | 2016-04-05 09:29:01 -0400 |
commit | b3edd32aee47a0b123870de58664600acc17087b (patch) | |
tree | 41840177672480ff428f279437a5a08a6eccaeb6 /webapp/utils/async_client.jsx | |
parent | c12d997f248c143b7746d07a3c2ce9b58a3ecd5e (diff) | |
download | chat-b3edd32aee47a0b123870de58664600acc17087b.tar.gz chat-b3edd32aee47a0b123870de58664600acc17087b.tar.bz2 chat-b3edd32aee47a0b123870de58664600acc17087b.zip |
PLT-1750 Moved slash commands to backstage
* Added slash commands to InstalledIntegrations page
* Reset installed integration type filter if there is no longer any integrations of the selected type
* Added pages to backstage to add slash commands
* Cleaned up internationalization for slash commands
* Added ability to regen slash command tokens from backstage
* Removed Integrations tab from UserSettings
Diffstat (limited to 'webapp/utils/async_client.jsx')
-rw-r--r-- | webapp/utils/async_client.jsx | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/webapp/utils/async_client.jsx b/webapp/utils/async_client.jsx index db0b2258c..5b0c221ae 100644 --- a/webapp/utils/async_client.jsx +++ b/webapp/utils/async_client.jsx @@ -1258,3 +1258,80 @@ export function regenOutgoingHookToken(id) { } ); } + +export function listTeamCommands() { + if (isCallInProgress('listTeamCommands')) { + return; + } + + callTracker.listTeamCommands = utils.getTimestamp(); + + client.listTeamCommands( + (data) => { + callTracker.listTeamCommands = 0; + + AppDispatcher.handleServerAction({ + type: ActionTypes.RECEIVED_COMMANDS, + commands: data + }); + }, + (err) => { + callTracker.listTeamCommands = 0; + dispatchError(err, 'listTeamCommands'); + } + ); +} + +export function addCommand(command, success, error) { + client.addCommand( + command, + (data) => { + AppDispatcher.handleServerAction({ + type: ActionTypes.RECEIVED_COMMAND, + command: data + }); + + if (success) { + success(); + } + }, + (err) => { + if (error) { + error(err); + } else { + dispatchError(err, 'addCommand'); + } + } + ); +} + +export function deleteCommand(id) { + client.deleteCommand( + {id}, + () => { + AppDispatcher.handleServerAction({ + type: ActionTypes.REMOVED_COMMAND, + id + }); + }, + (err) => { + dispatchError(err, 'deleteCommand'); + } + ); +} + +export function regenCommandToken(id) { + client.regenCommandToken( + {id}, + (data) => { + AppDispatcher.handleServerAction({ + type: ActionTypes.UPDATED_COMMAND, + command: data + }); + }, + (err) => { + dispatchError(err, 'regenCommandToken'); + } + ); +} + |