RegFormEvent.js 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. import React from 'react'
  2. import { Field, reduxForm } from 'redux-form';
  3. import './reg-form-event.scss';
  4. import { customSelect } from "../customFields/customSelect/customSelect";
  5. import { customInput } from "../customFields/customInput/customInput";
  6. import { validationForms } from "../../utils/validationForms";
  7. let RegFormEvent = props => {
  8. const { handleSubmit, regEventSubmit, eventId, reset } = props;
  9. const eventTypes = ['Select distance', 'Half marathone','Marathone'];
  10. const submit = value => {
  11. value.event = eventId;
  12. //console.log('user-event', value);
  13. regEventSubmit(value);
  14. reset();
  15. };
  16. return (
  17. <form className="form" onSubmit={handleSubmit(submit)}>
  18. <Field name="name" label="Full name" type="text" id="name" component={customInput} />
  19. <Field name="phone" label="Phone" type="phone" id="phone" component={customInput} />
  20. <Field name="email" label="E-mail" type="email" id="email" component={customInput} />
  21. <div className="reg-radio">
  22. <div className="radio-label">
  23. <Field name="sex" component="input" type="radio" id="male" value="male" hidden/>
  24. <label htmlFor="male">male</label>
  25. </div>
  26. <div className="radio-label">
  27. <Field name="sex" component="input" type="radio" id="female" value="female" hidden/>
  28. <label htmlFor="female">female</label>
  29. </div>
  30. <div className="required-field">!Required field</div>
  31. </div>
  32. <Field name="distance" label="Distance" required component={customSelect}>
  33. {eventTypes.map( (elem,ind) => <option key={ind} value={elem}>{elem}</option>)}
  34. </Field>
  35. <Field name="userCountry" label="Country" type="text" id="userCountry" component={customInput} />
  36. <div className="btn-group">
  37. <button className="btn" type="submit">Register</button>
  38. </div>
  39. </form>
  40. )
  41. };
  42. RegFormEvent = reduxForm({
  43. form: 'regFormEvent',
  44. validate: validationForms
  45. })(RegFormEvent)
  46. export default RegFormEvent