// Copyright (c) 2015-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 {FormattedHTMLMessage, FormattedMessage} from 'react-intl'; import SettingsGroup from './settings_group.jsx'; export default class WebhookSettings extends AdminSettings { constructor(props) { super(props); this.getConfigFromState = this.getConfigFromState.bind(this); this.renderSettings = this.renderSettings.bind(this); } getConfigFromState(config) { config.ServiceSettings.EnableIncomingWebhooks = this.state.enableIncomingWebhooks; config.ServiceSettings.EnableOutgoingWebhooks = this.state.enableOutgoingWebhooks; config.ServiceSettings.EnableCommands = this.state.enableCommands; config.ServiceSettings.EnableOnlyAdminIntegrations = this.state.enableOnlyAdminIntegrations; config.ServiceSettings.EnablePostUsernameOverride = this.state.enablePostUsernameOverride; config.ServiceSettings.EnablePostIconOverride = this.state.enablePostIconOverride; config.ServiceSettings.EnableOAuthServiceProvider = this.state.enableOAuthServiceProvider; return config; } getStateFromConfig(config) { return { enableIncomingWebhooks: config.ServiceSettings.EnableIncomingWebhooks, enableOutgoingWebhooks: config.ServiceSettings.EnableOutgoingWebhooks, enableCommands: config.ServiceSettings.EnableCommands, enableOnlyAdminIntegrations: config.ServiceSettings.EnableOnlyAdminIntegrations, enablePostUsernameOverride: config.ServiceSettings.EnablePostUsernameOverride, enablePostIconOverride: config.ServiceSettings.EnablePostIconOverride, enableOAuthServiceProvider: config.ServiceSettings.EnableOAuthServiceProvider }; } renderTitle() { return ( ); } renderSettings() { return ( } helpText={ } value={this.state.enableIncomingWebhooks} onChange={this.handleChange} /> } helpText={ } value={this.state.enableOutgoingWebhooks} onChange={this.handleChange} /> } helpText={ } value={this.state.enableCommands} onChange={this.handleChange} /> } helpText={ } value={this.state.enableOAuthServiceProvider} onChange={this.handleChange} /> } helpText={ } value={this.state.enableOnlyAdminIntegrations} onChange={this.handleChange} /> } helpText={ } value={this.state.enablePostUsernameOverride} onChange={this.handleChange} /> } helpText={ } value={this.state.enablePostIconOverride} onChange={this.handleChange} /> ); } }