Add system console switch for enabling link previews (#5663)

This commit is contained in:
Joram Wilander
2017-03-06 21:13:12 -05:00
committed by Christopher Speller
parent f99658152a
commit e87f5c6cf9
12 changed files with 128 additions and 6 deletions

View File

@@ -689,6 +689,16 @@ export default class AdminSidebar extends React.Component {
}
/>
<AdminSidebarSection
name='link_previews'
title={
<FormattedMessage
id='admin.sidebar.linkPreviews'
defaultMessage='Link Previews'
/>
}
/>
<AdminSidebarSection
name='legal_and_support'
title={

View File

@@ -0,0 +1,66 @@
// Copyright (c) 2017 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 {FormattedMessage} from 'react-intl';
import SettingsGroup from './settings_group.jsx';
export default class LinkPreviewsSettings extends AdminSettings {
constructor(props) {
super(props);
this.getConfigFromState = this.getConfigFromState.bind(this);
this.renderSettings = this.renderSettings.bind(this);
}
getConfigFromState(config) {
config.ServiceSettings.EnableLinkPreviews = this.state.enableLinkPreviews;
return config;
}
getStateFromConfig(config) {
return {
enableLinkPreviews: config.ServiceSettings.EnableLinkPreviews
};
}
renderTitle() {
return (
<h3>
<FormattedMessage
id='admin.customization.linkPreviews'
defaultMessage='Link Previews'
/>
</h3>
);
}
renderSettings() {
return (
<SettingsGroup>
<BooleanSetting
id='enableLinkPreviews'
label={
<FormattedMessage
id='admin.customization.enableLinkPreviewsTitle'
defaultMessage='Enable Link Previews:'
/>
}
helpText={
<FormattedMessage
id='admin.customization.enableLinkPreviewsDesc'
defaultMessage='Enable users to display a preview of website content below the message, if available. When true, website previews can be enabled from Account Settings > Advanced > Preview pre-release features.'
/>
}
value={this.state.enableLinkPreviews}
onChange={this.handleChange}
/>
</SettingsGroup>
);
}
}