diff options
author | David Meza <dmeza@users.noreply.github.com> | 2017-09-01 08:53:55 -0500 |
---|---|---|
committer | Joram Wilander <jwawilander@gmail.com> | 2017-09-01 09:53:55 -0400 |
commit | 3c5280119357e3742811fd724601d0bef01bcb29 (patch) | |
tree | 70a63e6748a5fd15b001f2750992deb03b4b68cf /webapp/actions/global_actions.jsx | |
parent | baa992a5594c271504c4551177a3d69eab848913 (diff) | |
download | chat-3c5280119357e3742811fd724601d0bef01bcb29.tar.gz chat-3c5280119357e3742811fd724601d0bef01bcb29.tar.bz2 chat-3c5280119357e3742811fd724601d0bef01bcb29.zip |
Config to make town square read only (#7140)
* Be able to make Town Square read-only (Disable typing messages for non admins).
* Do not emit UserTypingEvent when TownSquareIsReadOnly and is Town Square.
* Add unit tests for TownSquareIsReadOnly config value and logic.
* Add TownSquareIsReadOnly to System console>Policy. Added Telemetry.
* Add control for TownSquareIsReadOnly=true only for License Enterprise Edition E10 & E20.
* Update en.json
* Update en.json
* Update policy_settings.jsx
* Change config value from TownSquareIsReadOnly to ExperimentalTownSquareIsReadOnly.
* Refactored to simplify. Avoid code repeat and multiple db calls.
Diffstat (limited to 'webapp/actions/global_actions.jsx')
-rw-r--r-- | webapp/actions/global_actions.jsx | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/webapp/actions/global_actions.jsx b/webapp/actions/global_actions.jsx index a67d1b751..025e56f7d 100644 --- a/webapp/actions/global_actions.jsx +++ b/webapp/actions/global_actions.jsx @@ -443,6 +443,13 @@ export function emitLocalUserTypingEvent(channelId, parentId) { const t = Date.now(); const membersInChannel = ChannelStore.getStats(channelId).member_count; + if (global.mm_license.IsLicensed === 'true' && global.mm_config.ExperimentalTownSquareIsReadOnly === 'true') { + const channel = ChannelStore.getChannelById(channelId); + if (channel && ChannelStore.isDefault(channel)) { + return; + } + } + if (((t - lastTimeTypingSent) > global.window.mm_config.TimeBetweenUserTypingUpdatesMilliseconds) && membersInChannel < global.window.mm_config.MaxNotificationsPerChannel && global.window.mm_config.EnableUserTypingMessages === 'true') { WebSocketClient.userTyping(channelId, parentId); lastTimeTypingSent = t; |