diff options
author | Harrison Healey <harrisonmhealey@gmail.com> | 2016-04-11 09:04:56 -0400 |
---|---|---|
committer | Christopher Speller <crspeller@gmail.com> | 2016-04-11 09:04:56 -0400 |
commit | 29e1a853601514284c2af3f3302f30ad0d3c6d54 (patch) | |
tree | f06e39d3fc31684359888657512b13e2b7719277 /webapp/components/backstage/add_outgoing_webhook.jsx | |
parent | 81e7e853697263f25ca505cc9b2cd50c6e2fe739 (diff) | |
download | chat-29e1a853601514284c2af3f3302f30ad0d3c6d54.tar.gz chat-29e1a853601514284c2af3f3302f30ad0d3c6d54.tar.bz2 chat-29e1a853601514284c2af3f3302f30ad0d3c6d54.zip |
PLT-2553 Additional backstage UI Improvements (#2673)
* Renamed Commands to Slash Commands in backstage UI
* Updated displayed info for listed commands and outgoing webhooks
* Disallowed empty outgoing webhook trigger words and improved client-side validation for them
Diffstat (limited to 'webapp/components/backstage/add_outgoing_webhook.jsx')
-rw-r--r-- | webapp/components/backstage/add_outgoing_webhook.jsx | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/webapp/components/backstage/add_outgoing_webhook.jsx b/webapp/components/backstage/add_outgoing_webhook.jsx index acdd98ba8..ff5e90e07 100644 --- a/webapp/components/backstage/add_outgoing_webhook.jsx +++ b/webapp/components/backstage/add_outgoing_webhook.jsx @@ -50,7 +50,18 @@ export default class AddOutgoingWebhook extends React.Component { clientError: '' }); - if (!this.state.channelId && !this.state.triggerWords) { + const triggerWords = []; + if (this.state.triggerWords) { + for (let triggerWord of this.state.triggerWords.split('\n')) { + triggerWord = triggerWord.trim(); + + if (triggerWord.length > 0) { + triggerWords.push(triggerWord); + } + } + } + + if (!this.state.channelId && triggerWords.length === 0) { this.setState({ saving: false, clientError: ( @@ -64,7 +75,16 @@ export default class AddOutgoingWebhook extends React.Component { return; } - if (!this.state.callbackUrls) { + const callbackUrls = []; + for (let callbackUrl of this.state.callbackUrls.split('\n')) { + callbackUrl = callbackUrl.trim(); + + if (callbackUrl.length > 0) { + callbackUrls.push(callbackUrl); + } + } + + if (callbackUrls.length === 0) { this.setState({ saving: false, clientError: ( @@ -80,8 +100,8 @@ export default class AddOutgoingWebhook extends React.Component { const hook = { channel_id: this.state.channelId, - trigger_words: this.state.triggerWords.split('\n').map((word) => word.trim()), - callback_urls: this.state.callbackUrls.split('\n').map((url) => url.trim()), + trigger_words: triggerWords, + callback_urls: callbackUrls, display_name: this.state.displayName, description: this.state.description }; |