// Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved. // See License.txt for license information. import React from 'react'; import AdminSettings from './admin_settings.jsx'; import BooleanSetting from './boolean_setting.jsx'; import TextSetting from './text_setting.jsx'; import {FormattedMessage, FormattedHTMLMessage} from 'react-intl'; import SettingsGroup from './settings_group.jsx'; import * as Utils from 'utils/utils.jsx'; export default class MetricsSettings extends AdminSettings { constructor(props) { super(props); this.getConfigFromState = this.getConfigFromState.bind(this); this.renderSettings = this.renderSettings.bind(this); } getConfigFromState(config) { config.MetricsSettings.Enable = this.state.enable; config.MetricsSettings.ListenAddress = this.state.listenAddress; return config; } getStateFromConfig(config) { const settings = config.MetricsSettings; return { enable: settings.Enable, listenAddress: settings.ListenAddress }; } renderTitle() { return ( ); } renderSettings() { const licenseEnabled = global.window.mm_license.IsLicensed === 'true' && global.window.mm_license.Metrics === 'true'; if (!licenseEnabled) { return null; } return ( } helpText={ } value={this.state.enable} onChange={this.handleChange} /> } placeholder={Utils.localizeMessage('admin.metrics.listenAddressEx', 'Ex ":8067"')} helpText={ } value={this.state.listenAddress} onChange={this.handleChange} /> ); } }