PLT-7: Refactoring frontend (chunk 6)
- User settings
Этот коммит содержится в:
@@ -6,7 +6,28 @@ import SettingItemMax from '../setting_item_max.jsx';
|
||||
import ManageIncomingHooks from './manage_incoming_hooks.jsx';
|
||||
import ManageOutgoingHooks from './manage_outgoing_hooks.jsx';
|
||||
|
||||
export default class UserSettingsIntegrationsTab extends React.Component {
|
||||
import {intlShape, injectIntl, defineMessages, FormattedMessage} from 'mm-intl';
|
||||
|
||||
const holders = defineMessages({
|
||||
inName: {
|
||||
id: 'user.settings.integrations.incomingWebhooks',
|
||||
defaultMessage: 'Incoming Webhooks'
|
||||
},
|
||||
inDesc: {
|
||||
id: 'user.settings.integrations.incomingWebhooksDescription',
|
||||
defaultMessage: 'Manage your incoming webhooks'
|
||||
},
|
||||
outName: {
|
||||
id: 'user.settings.integrations.outWebhooks',
|
||||
defaultMessage: 'Outgoing Webhooks'
|
||||
},
|
||||
outDesc: {
|
||||
id: 'user.settings.integrations.outWebhooksDescription',
|
||||
defaultMessage: 'Manage your outgoing webhooks'
|
||||
}
|
||||
});
|
||||
|
||||
class UserSettingsIntegrationsTab extends React.Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
|
||||
@@ -21,6 +42,7 @@ export default class UserSettingsIntegrationsTab extends React.Component {
|
||||
let incomingHooksSection;
|
||||
let outgoingHooksSection;
|
||||
var inputs = [];
|
||||
const {formatMessage} = this.props.intl;
|
||||
|
||||
if (global.window.mm_config.EnableIncomingWebhooks === 'true') {
|
||||
if (this.props.activeSection === 'incoming-hooks') {
|
||||
@@ -30,7 +52,7 @@ export default class UserSettingsIntegrationsTab extends React.Component {
|
||||
|
||||
incomingHooksSection = (
|
||||
<SettingItemMax
|
||||
title='Incoming Webhooks'
|
||||
title={formatMessage(holders.inName)}
|
||||
width='medium'
|
||||
inputs={inputs}
|
||||
updateSection={(e) => {
|
||||
@@ -42,9 +64,9 @@ export default class UserSettingsIntegrationsTab extends React.Component {
|
||||
} else {
|
||||
incomingHooksSection = (
|
||||
<SettingItemMin
|
||||
title='Incoming Webhooks'
|
||||
title={formatMessage(holders.inName)}
|
||||
width='medium'
|
||||
describe='Manage your incoming webhooks'
|
||||
describe={formatMessage(holders.inDesc)}
|
||||
updateSection={() => {
|
||||
this.updateSection('incoming-hooks');
|
||||
}}
|
||||
@@ -61,7 +83,7 @@ export default class UserSettingsIntegrationsTab extends React.Component {
|
||||
|
||||
outgoingHooksSection = (
|
||||
<SettingItemMax
|
||||
title='Outgoing Webhooks'
|
||||
title={formatMessage(holders.outName)}
|
||||
width='medium'
|
||||
inputs={inputs}
|
||||
updateSection={(e) => {
|
||||
@@ -73,9 +95,9 @@ export default class UserSettingsIntegrationsTab extends React.Component {
|
||||
} else {
|
||||
outgoingHooksSection = (
|
||||
<SettingItemMin
|
||||
title='Outgoing Webhooks'
|
||||
title={formatMessage(holders.outName)}
|
||||
width='medium'
|
||||
describe='Manage your outgoing webhooks'
|
||||
describe={formatMessage(holders.outDesc)}
|
||||
updateSection={() => {
|
||||
this.updateSection('outgoing-hooks');
|
||||
}}
|
||||
@@ -104,11 +126,19 @@ export default class UserSettingsIntegrationsTab extends React.Component {
|
||||
className='modal-back'
|
||||
onClick={this.props.collapseModal}
|
||||
/>
|
||||
{'Integration Settings'}
|
||||
<FormattedMessage
|
||||
id='user.settings.integrations.title'
|
||||
defaultMessage='Integration Settings'
|
||||
/>
|
||||
</h4>
|
||||
</div>
|
||||
<div className='user-settings'>
|
||||
<h3 className='tab-header'>{'Integration Settings'}</h3>
|
||||
<h3 className='tab-header'>
|
||||
<FormattedMessage
|
||||
id='user.settings.integrations.title'
|
||||
defaultMessage='Integration Settings'
|
||||
/>
|
||||
</h3>
|
||||
<div className='divider-dark first'/>
|
||||
{incomingHooksSection}
|
||||
<div className='divider-light'/>
|
||||
@@ -121,6 +151,7 @@ export default class UserSettingsIntegrationsTab extends React.Component {
|
||||
}
|
||||
|
||||
UserSettingsIntegrationsTab.propTypes = {
|
||||
intl: intlShape.isRequired,
|
||||
user: React.PropTypes.object,
|
||||
updateSection: React.PropTypes.func,
|
||||
updateTab: React.PropTypes.func,
|
||||
@@ -128,3 +159,5 @@ UserSettingsIntegrationsTab.propTypes = {
|
||||
closeModal: React.PropTypes.func.isRequired,
|
||||
collapseModal: React.PropTypes.func.isRequired
|
||||
};
|
||||
|
||||
export default injectIntl(UserSettingsIntegrationsTab);
|
||||
Ссылка в новой задаче
Block a user