PLT-7: Refactoring frontend (chunk 6)

- User settings
Этот коммит содержится в:
Elias Nahum
2016-01-30 18:10:04 -03:00
родитель 7ff7c86461
Коммит 78314c7d4d
23 изменённых файлов: 2266 добавлений и 331 удалений

Просмотреть файл

@@ -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);