diff --git a/src/components/CommonForm/events.js b/src/components/CommonForm/events.js index e8c6712a6c1db..cb208c3125f95 100644 --- a/src/components/CommonForm/events.js +++ b/src/components/CommonForm/events.js @@ -1,6 +1,6 @@ -import React, { useState, useEffect } from "react"; +import React, { useState } from "react"; import Button from "../../reusecore/Button"; -import axios from "axios"; +import { useWebhookSubmit } from "../../utils/hooks/useWebhookSubmit"; import { Field, Form, Formik } from "formik"; import CommonFormWrapper from "./commonForm.style"; import { Container } from "../../reusecore/Layout"; @@ -10,8 +10,7 @@ import layer5_img from "../../assets/images/layer5/layer5-only/svg/layer5-white- const EventForm = ({ form, title, submit_title, submit_body }) => { const [stepNumber, setStepNumber] = useState(0); - const [memberFormOne, setMemberFormOne] = useState({}); - const [submit, setSubmit] = useState(false); + const { submitForm } = useWebhookSubmit(); // Form values const [email, setEmail] = useState(""); @@ -21,14 +20,6 @@ const EventForm = ({ form, title, submit_title, submit_body }) => { const [occupation, setOccupation] = useState(""); - useEffect(() => { - if (submit) { - axios.post("https://hook.us1.make.com/nficb3d7swqkclkl467st4hp4cg65u8o", { - memberFormOne, - }); - } - }, [submit]); - return ( { @@ -44,19 +35,27 @@ const EventForm = ({ form, title, submit_title, submit_body }) => { org: org, form: form, }} - onSubmit={values => { - setMemberFormOne(values); - setStepNumber(1); - setSubmit(true); - window.scrollTo(0,window.scrollY - 800); - setFirstName(values.firstname); - setEmail(values.email); - setLastName(values.lastname); - setOccupation(values.occupation); - setOrg(values.org); + onSubmit={async (values, { setStatus }) => { + const { success } = await submitForm({ memberFormOne: values }); + if (success) { + setStatus(null); + setStepNumber(1); + window.scrollTo(0,window.scrollY - 800); + setFirstName(values.firstname); + setEmail(values.email); + setLastName(values.lastname); + setOccupation(values.occupation); + setOrg(values.org); + } else { + setStatus({ submitError: "Submission failed. Please try again." }); + } }} > -
+ {({ status }) => ( + + @@ -69,7 +68,8 @@ const EventForm = ({ form, title, submit_title, submit_body }) => {