This commit is contained in:
Kenneth Jannette
2024-01-19 15:15:40 -06:00
parent d64d6c0ff9
commit 93e298f412
2 changed files with 23 additions and 13 deletions

View File

@@ -3,7 +3,7 @@ import Button from "../../pageElements/Button";
import Modal from "react-bootstrap/Modal"; import Modal from "react-bootstrap/Modal";
import TextInput from "../../pageElements/TextInput"; import TextInput from "../../pageElements/TextInput";
import { db } from "../../firebase"; import { db } from "../../firebase";
import { paymentfields } from "../../Constants/Fields/Signupfields";
import { splitEvery } from "../../Utils/Array"; import { splitEvery } from "../../Utils/Array";
import Col from "react-bootstrap/Col"; import Col from "react-bootstrap/Col";
import Form from "react-bootstrap/Form"; import Form from "react-bootstrap/Form";
@@ -21,8 +21,10 @@ const PaymentModal = ({
buttonLabelText, buttonLabelText,
modalText, modalText,
isBusy, isBusy,
setCardNumber, handleChangePaymentInput,
handleChangeInput, handleSignup,
paymentdata,
setPaymentdata,
}) => { }) => {
const fieldsChunkSize = 2; const fieldsChunkSize = 2;
@@ -41,10 +43,10 @@ const PaymentModal = ({
error={data[name].error} error={data[name].error}
message={data[name].message} message={data[name].message}
label={ label={
data[name].value.length === 0 ? signupfields[name].label : "" data[name].value.length === 0 ? paymentfields[name].label : ""
} }
type={signupfields[name].type} type={paymentfields[name].type}
values={signupfields[name].values} values={paymentfields[name].values}
disabled={isBusy} disabled={isBusy}
/> />
</Col> </Col>

View File

@@ -19,6 +19,7 @@ import {
} from "../../Utils/Form"; } from "../../Utils/Form";
import { objectMap } from "../../Utils/Object"; import { objectMap } from "../../Utils/Object";
import { signupfields } from "../../Constants/Fields/Signupfields"; import { signupfields } from "../../Constants/Fields/Signupfields";
import { paymentfields } from "../../Constants/Fields/PaymentFields";
import "../../styles/signup.scss"; import "../../styles/signup.scss";
const SignupPage = () => { const SignupPage = () => {
@@ -31,6 +32,9 @@ const SignupPage = () => {
const fieldsChunkSize = 2; const fieldsChunkSize = 2;
const [isBusy, setIsBusy] = useState(false); const [isBusy, setIsBusy] = useState(false);
const [data, setData] = useState(getFormDataDefaults(signupfields)); const [data, setData] = useState(getFormDataDefaults(signupfields));
const [paymentdata, setPaymentdata] = useState(
getFormDataDefaults(signupfields)
);
const [showPaymentModal, setShowPaymentModal] = useState(false); const [showPaymentModal, setShowPaymentModal] = useState(false);
const handleChangeInput = (e, name) => { const handleChangeInput = (e, name) => {
@@ -40,6 +44,13 @@ const SignupPage = () => {
} }
}; };
const handleChangePaymentInput = (e, name) => {
const newData = handleFormDataChange(e, name, data, signupfields);
if (newData !== null) {
setData(newData);
}
};
const validateData = () => { const validateData = () => {
const newData = getValidatedFormData(data, signupfields); const newData = getValidatedFormData(data, signupfields);
const hasErrors = isFormDataHasErrors(newData); const hasErrors = isFormDataHasErrors(newData);
@@ -259,13 +270,10 @@ const SignupPage = () => {
{showPaymentModal ? ( {showPaymentModal ? (
<PaymentModal <PaymentModal
onCancel={handleCancel} onCancel={handleCancel}
cardName={cardName} handleChangePaymentInput={handleChangePaymentInput}
setCardName={setCardName} handleSignup={handleSignup}
cardNumber={cardNumber} paymentdata={paymentdata}
setCardNumber={setCardNumber} setPaymentdata={setPaymentdata}
cardSecNumber={cardSecNumber}
setCardSecNumber={setCardSecNumber}
onConfirm={handleSignup}
buttonLabelText="Signup" buttonLabelText="Signup"
modalText="Please enter payment information" modalText="Please enter payment information"
/> />