From 80418a052915ec6b084d531a41a6b8446bfc05da Mon Sep 17 00:00:00 2001
From: mperezsa <19-mperezsa@users.noreply.022e47118ec0>
Date: Thu, 25 Nov 2021 12:51:22 +0000
Subject: [PATCH] Upload New File

---
 .../registration/RegistrationForm.js          | 41 +++++++++++++++++++
 1 file changed, 41 insertions(+)
 create mode 100644 PROF-XXI FW Tool/client/src/components/pages/validation/registration/RegistrationForm.js

diff --git a/PROF-XXI FW Tool/client/src/components/pages/validation/registration/RegistrationForm.js b/PROF-XXI FW Tool/client/src/components/pages/validation/registration/RegistrationForm.js
new file mode 100644
index 0000000..16d2217
--- /dev/null
+++ b/PROF-XXI FW Tool/client/src/components/pages/validation/registration/RegistrationForm.js	
@@ -0,0 +1,41 @@
+import { useState, useEffect } from "react";
+
+const RegistrationForm = (Submit, validateRegistration) => {
+  const [user, setUser] = useState({
+    organizationName: "",
+    universityWebsite: "",
+    firstName: "",
+    lastName: "",
+    position: "Teacher",
+    profile: "",
+    email: "",
+    password: "",
+  });
+
+  const [errors, setErrors] = useState({});
+  const [isSubmitting, setIsSubmitting] = useState(false);
+
+  const handleChange = (e) => {
+    const fieldName = e.target.name;
+    const fieldValue = e.target.value;
+    setUser({ ...user, [fieldName]: fieldValue });
+  };
+
+  const handleSubmit = (e) => {
+    e.preventDefault();
+    setErrors(validateRegistration(user));
+    setIsSubmitting(true);
+  };
+
+  useEffect(() => {
+    // console.log(errors);
+    // console.log(isSubmitting);
+    if (Object.keys(errors).length === 0 && isSubmitting) {
+      Submit();
+    }
+  }, [errors]);
+
+  return { handleChange, handleSubmit, user, errors };
+};
+
+export default RegistrationForm;
-- 
GitLab