From 510b1a18f5282981a70503c0cde474e121c9e651 Mon Sep 17 00:00:00 2001 From: Chris Duarte Date: Mon, 28 Aug 2017 09:22:54 -0700 Subject: Manage version configurations client versions (#7220) * Add config values for client versions. Return client versions in ping response. * Manage client version through System Console. * Added client versions to diagnostics * Added translations messages en.json file. * Hide Client Versions on System Console. --- webapp/components/admin_console/admin_sidebar.jsx | 17 +++ .../admin_console/client_versions_settings.jsx | 169 +++++++++++++++++++++ webapp/i18n/en.json | 13 ++ webapp/routes/route_admin_console.jsx | 5 + 4 files changed, 204 insertions(+) create mode 100644 webapp/components/admin_console/client_versions_settings.jsx (limited to 'webapp') diff --git a/webapp/components/admin_console/admin_sidebar.jsx b/webapp/components/admin_console/admin_sidebar.jsx index 97b63e9c6..9a726c65c 100644 --- a/webapp/components/admin_console/admin_sidebar.jsx +++ b/webapp/components/admin_console/admin_sidebar.jsx @@ -277,6 +277,22 @@ export default class AdminSidebar extends React.Component { ); } + const SHOW_CLIENT_VERSIONS = false; + let clientVersions = null; + if (SHOW_CLIENT_VERSIONS) { + clientVersions = ( + + } + /> + ); + } + return (
@@ -477,6 +493,7 @@ export default class AdminSidebar extends React.Component { /> } /> + {clientVersions} + + + ); + } + + renderSettings() { + return ( + + + } + placeholder={Utils.localizeMessage('admin.client_versions.androidLatestVersion', 'X.X.X')} + helpText={ + + } + value={this.state.androidLatestVersion} + onChange={this.handleChange} + /> + + } + placeholder={Utils.localizeMessage('admin.client_versions.androidMinVersion', 'X.X.X')} + helpText={ + + } + value={this.state.androidMinVersion} + onChange={this.handleChange} + /> + + } + placeholder={Utils.localizeMessage('admin.client_versions.desktopLatestVersion', 'X.X.X')} + helpText={ + + } + value={this.state.desktopLatestVersion} + onChange={this.handleChange} + /> + + } + placeholder={Utils.localizeMessage('admin.client_versions.desktopMinVersion', 'X.X.X')} + helpText={ + + } + value={this.state.desktopMinVersion} + onChange={this.handleChange} + /> + + } + placeholder={Utils.localizeMessage('admin.client_versions.iosLatestVersion', 'X.X.X')} + helpText={ + + } + value={this.state.iosLatestVersion} + onChange={this.handleChange} + /> + + } + placeholder={Utils.localizeMessage('admin.client_versions.iosMinVersion', 'X.X.X')} + helpText={ + + } + value={this.state.iosMinVersion} + onChange={this.handleChange} + /> + + ); + } +} diff --git a/webapp/i18n/en.json b/webapp/i18n/en.json index 7fefb188d..720a66317 100755 --- a/webapp/i18n/en.json +++ b/webapp/i18n/en.json @@ -150,6 +150,18 @@ "admin.authentication.oauth": "OAuth 2.0", "admin.authentication.saml": "SAML 2.0", "admin.banner.heading": "Note:", + "admin.client_versions.androidLatestVersion": "Latest Android Version", + "admin.client_versions.androidLatestVersionHelp": "The latest released Android version", + "admin.client_versions.androidMinVersion": "Minimum Android Version", + "admin.client_versions.androidMinVersionHelp": "The minimum compliant Android version", + "admin.client_versions.desktopLatestVersion": "Latest Desktop Version", + "admin.client_versions.desktopLatestVersionHelp": "The latest released Desktop version", + "admin.client_versions.desktopMinVersion": "Minimum Destop Version", + "admin.client_versions.desktopMinVersionHelp": "The minimum compliant Desktop version", + "admin.client_versions.iosLatestVersion": "Latest IOS Version", + "admin.client_versions.iosLatestVersionHelp": "The latest released IOS version", + "admin.client_versions.iosMinVersion": "Minimum IOS Version", + "admin.client_versions.iosMinVersionHelp": "The minimum compliant IOS version", "admin.cluster.enableDescription": "When true, Mattermost will run in High Availability mode. Please see documentation to learn more about configuring High Availability for Mattermost.", "admin.cluster.enableTitle": "Enable High Availability Mode:", "admin.cluster.interNodeListenAddressDesc": "The address the server will listen on for communicating with other servers.", @@ -858,6 +870,7 @@ "admin.sidebar.advanced": "Advanced", "admin.sidebar.audits": "Compliance and Auditing", "admin.sidebar.authentication": "Authentication", + "admin.sidebar.client_versions": "Client Versions", "admin.sidebar.cluster": "High Availability", "admin.sidebar.compliance": "Compliance", "admin.sidebar.configuration": "Configuration", diff --git a/webapp/routes/route_admin_console.jsx b/webapp/routes/route_admin_console.jsx index 15081a1d9..43245556f 100644 --- a/webapp/routes/route_admin_console.jsx +++ b/webapp/routes/route_admin_console.jsx @@ -25,6 +25,7 @@ import MfaSettings from 'components/admin_console/mfa_settings.jsx'; import PublicLinkSettings from 'components/admin_console/public_link_settings.jsx'; import SessionSettings from 'components/admin_console/session_settings.jsx'; import ConnectionSettings from 'components/admin_console/connection_settings.jsx'; +import ClientVersionsSettings from 'components/admin_console/client_versions_settings.jsx'; import EmailSettings from 'components/admin_console/email_settings.jsx'; import PushSettings from 'components/admin_console/push_settings.jsx'; import CustomIntegrationsSettings from 'components/admin_console/custom_integrations_settings.jsx'; @@ -134,6 +135,10 @@ export default ( path='connections' component={ConnectionSettings} /> + -- cgit v1.2.3-1-g7c22