* Add session idle timeout config setting
* Modify config setting name to SessionIdleTimeoutInMinutes
* Small re-org of if statement
* Merge with latest master
This cleans up the few NewLocAppError calls that crept in since the main
bulk of them were removed, and finally removes the NewLocAppError
function altogether.
* tie back-end plugins together
* fix comment typo
* add tests and a bit of polish
* tests and polish
* add test, don't let backend executable paths escape the plugin directory
* Add configuration to enable or disable choosing themes in Display Settings. Only for Licensed servers.
* Add configuration to enable or disable choosing custom themes in Display Settings. Only for Licensed servers.
* Add configuration to enable or disable a specific list of themes to choose in Display Settings. Only for Licensed servers.
* Added config value and logic for "DefaultTheme"
* Fix problem with undefined values when the server is not licensed
* Changed email batching short-circuit logic to look at last viewed at timestamp in channel member struct instead of in user's status struct, since the latter is only updated if the user's status is set to online
* Fixed unit tests
* Reduced right-hand drift
* Reduced total number of store calls by loading all channel member objects for user exactly once per team that the user received notifications for
* add S3 region to system console and add S3 validation
* update translation message
* add bool as return value to Validate* functions
* update Validate* functions to be pure
* PLT-7517 Added setting to enable tracing of Amazon S3 connections
* Removed unnecessary placeholders on boolean settings
* Added AmazonS3Trace to diagnostics
* Updated AmazonS3Trace setting name in system console
* Removing extra colon
* Add config value EnableXToLeaveChannelsFromLHS that if true displays x to the right of private and public channels on the LHS.
* Displays x to the right of private and public channels on the LHS based on if EnableXToLeaveChannelsFromLHS=true.
* change the tooltip for private and public channels to `Leave channel`
* Add client-side event for when user clicks the "x" button. Different for public, private, DM.
* 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.
* Implement experimental REST API endpoints for plugins
* Updates per feedback and rebase
* Update tests
* Further updates
* Update extraction of plugins
* Use OS temp dir for plugins instead of search path
* Fail extraction on paths that attempt to traverse upward
* Update pluginenv ActivePlugins()