UNPKG

instantjob-recruiter-client

Version:

a set of tools for creating an instantjob recruiter react client

171 lines (139 loc) 5.66 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of'); var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = require('babel-runtime/helpers/createClass'); var _createClass3 = _interopRequireDefault(_createClass2); var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); var _inherits2 = require('babel-runtime/helpers/inherits'); var _inherits3 = _interopRequireDefault(_inherits2); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _bind = require('classnames/bind'); var _bind2 = _interopRequireDefault(_bind); var _button = require('components/utils/button'); var _button2 = _interopRequireDefault(_button); var _utilities = require('../common/utilities'); var _users = require('../common/users'); var _store = require('../common/store'); var _store2 = _interopRequireDefault(_store); var _display = require('../actions/display'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var cx = _bind2.default.bind(require('../styles/new_user_form.scss')); var NewUserForm = function (_Component) { (0, _inherits3.default)(NewUserForm, _Component); function NewUserForm(props) { (0, _classCallCheck3.default)(this, NewUserForm); var _this = (0, _possibleConstructorReturn3.default)(this, (NewUserForm.__proto__ || (0, _getPrototypeOf2.default)(NewUserForm)).call(this, props)); _this.on_send = function () { var user = (0, _utilities.map_hash)(_this.state, function (info) { return info.trim(); }); (0, _users.action_invite_users)([user]); _store2.default.dispatch((0, _display.dismiss_popover)()); }; _this.state = { first_name: "", last_name: "", email: "", postal_code: "", phone_number: "" }; return _this; } (0, _createClass3.default)(NewUserForm, [{ key: 'render', value: function render() { var _this2 = this; return _react2.default.createElement( 'div', { className: cx('new-user-form') }, _react2.default.createElement( 'div', { className: cx('new-user-form__inputs') }, _react2.default.createElement('input', { ref: function ref(first_name_input) { return _this2.first_name_input = first_name_input; }, type: 'text', placeholder: 'Pr\xE9nom', className: cx('new-user-form__input', 'new-user-form__input_large'), value: this.state.first_name, onChange: function onChange(event) { var first_name = event.target.value; _this2.setState({ first_name: first_name }); } }), _react2.default.createElement('input', { ref: function ref(last_name_input) { return _this2.last_name_input = last_name_input; }, type: 'text', placeholder: 'Nom', className: cx('new-user-form__input', 'new-user-form__input_large'), value: this.state.last_name, onChange: function onChange(event) { var last_name = event.target.value; _this2.setState({ last_name: last_name }); } }), _react2.default.createElement('input', { ref: function ref(postal_code_input) { return _this2.postal_code_input = postal_code_input; }, type: 'text', placeholder: 'Code postal', className: cx('new-user-form__input'), value: this.state.postal_code, onChange: function onChange(event) { var postal_code = event.target.value; _this2.setState({ postal_code: postal_code }); } }), _react2.default.createElement('input', { ref: function ref(email_input) { return _this2.email_input = email_input; }, type: 'email', placeholder: 'Adresse mail', className: cx('new-user-form__input'), value: this.state.email, onChange: function onChange(event) { var email = event.target.value; _this2.setState({ email: email }); } }), _react2.default.createElement('input', { ref: function ref(phone_number_input) { return _this2.phone_number_input = phone_number_input; }, type: 'tel', placeholder: 'T\xE9l\xE9phone', className: cx('new-user-form__input'), value: this.state.phone_number, onChange: function onChange(event) { var phone_number = event.target.value; _this2.setState({ phone_number: phone_number }); } }) ), _react2.default.createElement( 'div', { className: cx('new-user-form__button-container') }, _react2.default.createElement( _button2.default, { disabled: !(0, _users.is_valid_email)(this.state.email), onClick: this.on_send }, 'Envoyer l\'invitation' ) ) ); } }]); return NewUserForm; }(_react.Component); exports.default = NewUserForm;