diff options
author | Carlos Tadeu Panato Junior <ctadeu@gmail.com> | 2017-07-21 21:04:41 +0200 |
---|---|---|
committer | Joram Wilander <jwawilander@gmail.com> | 2017-07-21 15:04:41 -0400 |
commit | 816bfbeb91b9cd64a8a85dc37cc0e82554409c14 (patch) | |
tree | d1069ec6ffa27b953bfe058d18fc0ca7ee7f6467 /webapp/components/navbar.jsx | |
parent | 10b7b96a2994382c82d3bc87b2d73c75671cea08 (diff) | |
download | chat-816bfbeb91b9cd64a8a85dc37cc0e82554409c14.tar.gz chat-816bfbeb91b9cd64a8a85dc37cc0e82554409c14.tar.bz2 chat-816bfbeb91b9cd64a8a85dc37cc0e82554409c14.zip |
[PLT-6708] /purpose [text] slash command: Edit the channel purpose (#6569)
* /purpose [text] slash command: Edit the channel purpose
* update command on server side to check for direct or group channels
* update stings and block the dialog when is DM or GM
* update per review
* remove duplicate websocker event and apply the same for /header command
* update per review
* update
Diffstat (limited to 'webapp/components/navbar.jsx')
-rw-r--r-- | webapp/components/navbar.jsx | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/webapp/components/navbar.jsx b/webapp/components/navbar.jsx index 6305f870e..fc2ade7ab 100644 --- a/webapp/components/navbar.jsx +++ b/webapp/components/navbar.jsx @@ -56,6 +56,8 @@ export default class Navbar extends React.Component { this.showEditChannelHeaderModal = this.showEditChannelHeaderModal.bind(this); this.hideEditChannelHeaderModal = this.hideEditChannelHeaderModal.bind(this); + this.showChannelPurposeModal = this.showChannelPurposeModal.bind(this); + this.hideChannelPurposeModal = this.hideChannelPurposeModal.bind(this); this.showRenameChannelModal = this.showRenameChannelModal.bind(this); this.hideRenameChannelModal = this.hideRenameChannelModal.bind(this); this.isStateValid = this.isStateValid.bind(this); @@ -112,6 +114,7 @@ export default class Navbar extends React.Component { PreferenceStore.addChangeListener(this.onChange); ModalStore.addModalListener(ActionTypes.TOGGLE_QUICK_SWITCH_MODAL, this.toggleQuickSwitchModal); ModalStore.addModalListener(ActionTypes.TOGGLE_CHANNEL_HEADER_UPDATE_MODAL, this.showEditChannelHeaderModal); + ModalStore.addModalListener(ActionTypes.TOGGLE_CHANNEL_PURPOSE_UPDATE_MODAL, this.showChannelPurposeModal); $('.inner-wrap').click(this.hideSidebars); document.addEventListener('keydown', this.handleQuickSwitchKeyPress); } @@ -124,6 +127,7 @@ export default class Navbar extends React.Component { PreferenceStore.removeChangeListener(this.onChange); ModalStore.removeModalListener(ActionTypes.TOGGLE_QUICK_SWITCH_MODAL, this.toggleQuickSwitchModal); ModalStore.addModalListener(ActionTypes.TOGGLE_CHANNEL_HEADER_UPDATE_MODAL, this.hideEditChannelHeaderModal); + ModalStore.addModalListener(ActionTypes.TOGGLE_CHANNEL_PURPOSE_UPDATE_MODAL, this.hideChannelPurposeModal); document.removeEventListener('keydown', this.handleQuickSwitchKeyPress); } @@ -202,6 +206,18 @@ export default class Navbar extends React.Component { }); } + showChannelPurposeModal() { + this.setState({ + showEditChannelPurposeModal: true + }); + } + + hideChannelPurposeModal() { + this.setState({ + showEditChannelPurposeModal: false + }); + } + showRenameChannelModal(e) { e.preventDefault(); @@ -504,7 +520,7 @@ export default class Navbar extends React.Component { <a role='menuitem' href='#' - onClick={() => this.setState({showEditChannelPurposeModal: true})} + onClick={this.showChannelPurposeModal} > <FormattedMessage id='channel_header.setPurpose' @@ -891,7 +907,7 @@ export default class Navbar extends React.Component { if (this.state.showEditChannelPurposeModal) { editChannelPurposeModal = ( <EditChannelPurposeModal - onModalDismissed={() => this.setState({showEditChannelPurposeModal: false})} + onModalDismissed={this.hideChannelPurposeModal} channel={channel} /> ); |