Max Red - Add send email on new ticket button in my account view
This commit is contained in:
parent
33bfc9b2bc
commit
07fcaa1363
|
@ -29,6 +29,7 @@ class AdminPanelMyAccount extends React.Component {
|
|||
profilePic: this.props.userProfilePic,
|
||||
level: this.props.userLevel * 1,
|
||||
departments: this.props.userDepartments,
|
||||
sendEmailOnNewTicket: this.props.userSendEmailOnNewTicket,
|
||||
onChange: () => this.props.dispatch(SessionActions.getUserData(null, null, true))
|
||||
};
|
||||
}
|
||||
|
|
|
@ -27,6 +27,7 @@ class StaffEditor extends React.Component {
|
|||
level: React.PropTypes.number.isRequired,
|
||||
tickets: React.PropTypes.array.isRequired,
|
||||
departments: React.PropTypes.array.isRequired,
|
||||
sendEmailOnNewTicket: React.PropTypes.bool,
|
||||
onChange: React.PropTypes.func,
|
||||
onDelete: React.PropTypes.func
|
||||
};
|
||||
|
@ -40,7 +41,8 @@ class StaffEditor extends React.Component {
|
|||
level: this.props.level - 1,
|
||||
message: null,
|
||||
loadingPicture: false,
|
||||
departments: this.getUserDepartments()
|
||||
departments: this.getUserDepartments(),
|
||||
sendEmailOnNewTicket: this.props.sendEmailOnNewTicket
|
||||
};
|
||||
|
||||
render() {
|
||||
|
@ -95,7 +97,7 @@ class StaffEditor extends React.Component {
|
|||
<FormField name="rpassword" validation="REPEAT_PASSWORD" required label={i18n('REPEAT_PASSWORD')} fieldProps={{size: 'large', password: true}}/>
|
||||
<SubmitButton size="medium" className="staff-editor__submit-button">{i18n('UPDATE_PASSWORD')}</SubmitButton>
|
||||
</Form>
|
||||
{(!this.props.myAccount) ? this.renderLevelForm() : null}
|
||||
{(this.props.myAccount) ? this.renderSendEmailOnNewTicketForm() : this.renderLevelForm()}
|
||||
<span className="separator staff-editor__separator" />
|
||||
</div>
|
||||
</div>
|
||||
|
@ -137,6 +139,9 @@ class StaffEditor extends React.Component {
|
|||
case 'DEPARTMENTS':
|
||||
message = 'DEPARTMENTS_UPDATED';
|
||||
break;
|
||||
case 'EMAIL_SETTING':
|
||||
message = 'EMAIL_SETTING_UPDATED';
|
||||
break;
|
||||
case 'FAIL':
|
||||
message = 'FAILED_EDIT_STAFF';
|
||||
break;
|
||||
|
@ -145,6 +150,18 @@ class StaffEditor extends React.Component {
|
|||
return <Message className="staff-editor__message" type={messageType}>{i18n(message)}</Message>;
|
||||
}
|
||||
|
||||
renderSendEmailOnNewTicketForm() {
|
||||
return (
|
||||
<div>
|
||||
<span className="separator staff-editor__separator"/>
|
||||
<Form className="staff-editor__update-email-setting" label={i18n('EMAIL_SETTING')} values={{sendEmailOnNewTicket: this.state.sendEmailOnNewTicket}} onChange={form => this.setState({sendEmailOnNewTicket: form.sendEmailOnNewTicket})} onSubmit={this.onSubmit.bind(this, 'EMAIL_SETTING')}>
|
||||
<FormField name="sendEmailOnNewTicket" label={i18n('SEND_EMAIL_ON_NEW_TICKET')} field="checkbox" fieldProps={{size: 'large'}} />
|
||||
<SubmitButton size="medium" className="staff-editor__submit-button">{i18n('UPDATE')}</SubmitButton>
|
||||
</Form>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
renderLevelForm() {
|
||||
return (
|
||||
<div>
|
||||
|
@ -273,6 +290,7 @@ class StaffEditor extends React.Component {
|
|||
path: '/staff/edit',
|
||||
data: {
|
||||
staffId: this.props.staffId,
|
||||
sendEmailOnNewTicket: form.sendEmailOnNewTicket,
|
||||
email: form.email,
|
||||
password: form.password,
|
||||
level: (form.level !== undefined) ? form.level + 1 : null,
|
||||
|
|
|
@ -141,10 +141,17 @@
|
|||
|
||||
&__update-email,
|
||||
&__update-password,
|
||||
&__update-level {
|
||||
&__update-level,
|
||||
&__update-email-setting {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
&__update-email-setting {
|
||||
margin-top: 28px;
|
||||
margin-bottom: 20px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
&__departments {
|
||||
border: 1px solid $grey;
|
||||
padding: 20px 50px;
|
||||
|
|
|
@ -11,6 +11,7 @@ module.exports = [
|
|||
name: 'Emilia Clarke',
|
||||
email: 'staff@opensupports.com',
|
||||
profilePic: '',
|
||||
sendEmailOnNewTicket: true,
|
||||
level: 3,
|
||||
staff: true,
|
||||
departments: [
|
||||
|
|
|
@ -156,6 +156,7 @@ module.exports = [
|
|||
name: 'Kurt Gödel',
|
||||
email: 'kurt@currycurrylady.hs',
|
||||
verified: false,
|
||||
sendEmailOnNewTicket: true,
|
||||
tickets: _.times(13).map(() => {
|
||||
return {
|
||||
ticketNumber: '118551',
|
||||
|
@ -375,6 +376,7 @@ module.exports = [
|
|||
data: {
|
||||
name: 'Haskell Curry',
|
||||
email: 'haskell@lambda.com',
|
||||
sendEmailOnNewTicket: true,
|
||||
tickets: [
|
||||
{
|
||||
ticketNumber: '445441',
|
||||
|
|
|
@ -176,6 +176,7 @@ export default {
|
|||
'HOME': 'Home',
|
||||
'TICKET_NUMBER': 'Ticket number',
|
||||
'NEXT': 'Next',
|
||||
'SEND_EMAIL_ON_NEW_TICKET': 'Send email on new ticket',
|
||||
|
||||
'CHART_CREATE_TICKET': 'Tickets created',
|
||||
'CHART_CLOSE': 'Tickets closed',
|
||||
|
|
|
@ -113,7 +113,8 @@ class SessionReducer extends Reducer {
|
|||
userProfilePic: userData.profilePic,
|
||||
userLevel: userData.level,
|
||||
userDepartments: userData.departments,
|
||||
userTickets: userData.tickets
|
||||
userTickets: userData.tickets,
|
||||
userSendEmailOnNewTicket: userData.sendEmailOnNewTicket
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -131,7 +132,8 @@ class SessionReducer extends Reducer {
|
|||
userLevel: userData.level,
|
||||
userDepartments: userData.departments,
|
||||
userTickets: userData.tickets,
|
||||
userId: userId
|
||||
userId: userId,
|
||||
userSendEmailOnNewTicket: userData.sendEmailOnNewTicket
|
||||
});
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue