From 58cda9cc7fb79ca9df6746de7f9662bc08dc156a Mon Sep 17 00:00:00 2001 From: Stefan Malzner Date: Fri, 13 Oct 2017 12:29:40 +0200 Subject: initial commit --- src/components/settings/user/EditUserForm.js | 145 +++++++++++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 src/components/settings/user/EditUserForm.js (limited to 'src/components/settings/user') diff --git a/src/components/settings/user/EditUserForm.js b/src/components/settings/user/EditUserForm.js new file mode 100644 index 000000000..f36887fc2 --- /dev/null +++ b/src/components/settings/user/EditUserForm.js @@ -0,0 +1,145 @@ +import React, { Component } from 'react'; +import PropTypes from 'prop-types'; +import { observer, PropTypes as MobxPropTypes } from 'mobx-react'; +import { defineMessages, intlShape } from 'react-intl'; +import { Link } from 'react-router'; + +// import { Link } from 'react-router'; + +import Form from '../../../lib/Form'; +import Input from '../../ui/Input'; +import Button from '../../ui/Button'; +import Radio from '../../ui/Radio'; +import Infobox from '../../ui/Infobox'; + +const messages = defineMessages({ + headline: { + id: 'settings.account.headline', + defaultMessage: '!!!Account', + }, + headlineProfile: { + id: 'settings.account.headlineProfile', + defaultMessage: '!!!Update Profile', + }, + headlineAccount: { + id: 'settings.account.headlineAccount', + defaultMessage: '!!!Account Information', + }, + headlinePassword: { + id: 'settings.account.headlinePassword', + defaultMessage: '!!!Change Password', + }, + successInfo: { + id: 'settings.account.successInfo', + defaultMessage: '!!!Your changes have been saved', + }, + buttonSave: { + id: 'settings.account.buttonSave', + defaultMessage: '!!!Update profile', + }, +}); + +@observer +export default class EditServiceForm extends Component { + static propTypes = { + status: MobxPropTypes.observableArray.isRequired, + form: PropTypes.instanceOf(Form).isRequired, + onSubmit: PropTypes.func.isRequired, + isSaving: PropTypes.bool.isRequired, + }; + + static defaultProps = { + service: {}, + }; + + static contextTypes = { + intl: intlShape, + }; + + submit(e) { + e.preventDefault(); + this.props.form.submit({ + onSuccess: (form) => { + const values = form.values(); + this.props.onSubmit(values); + }, + onError: () => {}, + }); + } + + render() { + const { + // user, + status, + form, + isSaving, + } = this.props; + const { intl } = this.context; + + return ( +
+
+ + + {intl.formatMessage(messages.headline)} + + + + + {intl.formatMessage(messages.headlineProfile)} + +
+
+
this.submit(e)} id="form"> + {status.length > 0 && status.includes('data-updated') && ( + + {intl.formatMessage(messages.successInfo)} + + )} +

{intl.formatMessage(messages.headlineAccount)}

+
+ + +
+ + + {form.$('accountType').value === 'company' && ( + + )} +

{intl.formatMessage(messages.headlinePassword)}

+ + + +
+
+ {/* Save Button */} + {isSaving ? ( +
+
+ ); + } +} -- cgit v1.2.3-70-g09d2