Files
mattermost/webapp/components/admin_console/public_link_settings.jsx
Harrison Healey fd53e3b786 PLT-2257 Reorganized System Console (#3003)
* Reorganized system console

* Fixed the names of some components

* Fixed timestamp for BrandImageSetting

* Fixed merge issues

* Updated push notification settings to match master branch

* Removed top level setting pages and moved enable Gitlab/LDAP settings onto their respective pages

* Re-added restrictDirectMessage setting to system console

* Re-added email connection test and fixed some margins

* Fixed ESLint errors

* Renamed Authentication > Onboarding to Authentication > Email in the system console

* Renamed Customization > Whitelabeling to Customization > Custom Branding in System Console

* Re-added EnableOpenServer to system console
2016-05-17 07:21:39 -04:00

91 lines
3.1 KiB
JavaScript

// Copyright (c) 2015 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 GeneratedSetting from './generated_setting.jsx';
import SettingsGroup from './settings_group.jsx';
export default class PublicLinkSettings extends AdminSettings {
constructor(props) {
super(props);
this.getConfigFromState = this.getConfigFromState.bind(this);
this.renderSettings = this.renderSettings.bind(this);
this.state = Object.assign(this.state, {
enablePublicLink: props.config.FileSettings.EnablePublicLink,
publicLinkSalt: props.config.FileSettings.PublicLinkSalt
});
}
getConfigFromState(config) {
config.FileSettings.EnablePublicLink = this.state.enablePublicLink;
config.FileSettings.PublicLinkSalt = this.state.publicLinkSalt;
return config;
}
renderTitle() {
return (
<h3>
<FormattedMessage
id='admin.security.title'
defaultMessage='Security Settings'
/>
</h3>
);
}
renderSettings() {
return (
<SettingsGroup
header={
<FormattedMessage
id='admin.security.public_links'
defaultMessage='Public Links'
/>
}
>
<BooleanSetting
id='enablePublicLink'
label={
<FormattedMessage
id='admin.image.shareTitle'
defaultMessage='Share Public File Link: '
/>
}
helpText={
<FormattedMessage
id='admin.image.shareDescription'
defaultMessage='Allow users to share public links to files and images.'
/>
}
value={this.state.enablePublicLink}
onChange={this.handleChange}
/>
<GeneratedSetting
id='publicLinkSalt'
label={
<FormattedMessage
id='admin.image.publicLinkTitle'
defaultMessage='Public Link Salt:'
/>
}
helpText={
<FormattedMessage
id='admin.image.publicLinkDescription'
defaultMessage='32-character salt added to signing of public image links. Randomly generated on install. Click "Re-Generate" to create new salt.'
/>
}
value={this.state.publicLinkSalt}
onChange={this.handleChange}
/>
</SettingsGroup>
);
}
}