Skip to content

Commit 40c749b

Browse files
author
Martin Krulis
committed
Final polishing.
1 parent 5bff6fa commit 40c749b

File tree

1 file changed

+40
-23
lines changed

1 file changed

+40
-23
lines changed

src/pages/SystemMessages/SystemMessages.js

Lines changed: 40 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import React, { Component } from 'react';
22
import PropTypes from 'prop-types';
33
import { connect } from 'react-redux';
4-
import { FormattedMessage } from 'react-intl';
4+
import { FormattedMessage, injectIntl, intlShape } from 'react-intl';
55

66
import Button from '../../components/widgets/FlatButton';
77
import PageContent from '../../components/layout/PageContent';
@@ -64,7 +64,13 @@ class SystemMessages extends Component {
6464
}
6565

6666
render() {
67-
const { fetchStatus, createMessage, editMessage, systemMessages } = this.props;
67+
const {
68+
fetchStatus,
69+
createMessage,
70+
editMessage,
71+
systemMessages,
72+
intl: { locale },
73+
} = this.props;
6874

6975
return (
7076
<FetchManyResourceRenderer
@@ -114,33 +120,43 @@ class SystemMessages extends Component {
114120
<React.Fragment>
115121
<Box
116122
title={<FormattedMessage id="app.systemMessages.listTitle" defaultMessage="System Messages" />}
117-
unlimitedHeight
118-
footer={
123+
unlimitedHeight>
124+
<React.Fragment>
125+
<MessagesList
126+
systemMessages={systemMessages}
127+
renderActions={message => (
128+
<React.Fragment>
129+
<Button
130+
bsSize="xs"
131+
bsStyle="warning"
132+
onClick={() => {
133+
this.setState({
134+
isOpen: true,
135+
createNew: false,
136+
message: getMessageInitialValues(message),
137+
});
138+
}}>
139+
<EditIcon gapRight />
140+
<FormattedMessage id="generic.edit" defaultMessage="Edit" />
141+
</Button>
142+
<DeleteSystemMessageButtonContainer
143+
id={message.id}
144+
bsSize="xs"
145+
locale={locale /* Hack to force re-rendering when locale changes */}
146+
/>
147+
</React.Fragment>
148+
)}
149+
/>
150+
<hr className="no-margin" />
119151
<p className="em-margin-top text-center">
120152
<Button onClick={() => this.setState({ isOpen: true, createNew: true })} bsStyle="success">
121153
<AddIcon gapRight />
122154
<FormattedMessage id="app.systemMessages.newSystemMessage" defaultMessage="New System Message" />
123155
</Button>
124156
</p>
125-
}>
126-
<MessagesList
127-
systemMessages={systemMessages}
128-
renderActions={message => (
129-
<React.Fragment>
130-
<Button
131-
bsSize="xs"
132-
bsStyle="warning"
133-
onClick={() => {
134-
this.setState({ isOpen: true, createNew: false, message: getMessageInitialValues(message) });
135-
}}>
136-
<EditIcon gapRight />
137-
<FormattedMessage id="generic.edit" defaultMessage="Edit" />
138-
</Button>
139-
<DeleteSystemMessageButtonContainer id={message.id} bsSize="xs" />
140-
</React.Fragment>
141-
)}
142-
/>
157+
</React.Fragment>
143158
</Box>
159+
144160
<EditSystemMessageForm
145161
createNew={this.state.createNew}
146162
initialValues={this.state.message}
@@ -166,6 +182,7 @@ SystemMessages.propTypes = {
166182
createMessage: PropTypes.func,
167183
editMessage: PropTypes.func,
168184
systemMessages: PropTypes.array.isRequired,
185+
intl: intlShape.isRequired,
169186
};
170187

171188
export default connect(
@@ -178,4 +195,4 @@ export default connect(
178195
createMessage: data => dispatch(createMessage(transformMessageFormData(data))),
179196
editMessage: (id, data) => dispatch(editMessage(id, transformMessageFormData(data))),
180197
})
181-
)(SystemMessages);
198+
)(injectIntl(SystemMessages));

0 commit comments

Comments
 (0)