From 15bd1a9dd7b1a778aed60130641bb22a4b2fae6d Mon Sep 17 00:00:00 2001 From: victorAnumudu Date: Sat, 12 Jul 2025 08:56:25 +0100 Subject: [PATCH] fixed contact page form validation --- app/contact/Forms.js | 38 +++++++++++++++++++++++++++++--------- 1 file changed, 29 insertions(+), 9 deletions(-) diff --git a/app/contact/Forms.js b/app/contact/Forms.js index 196fc32..96b8b5a 100644 --- a/app/contact/Forms.js +++ b/app/contact/Forms.js @@ -17,19 +17,38 @@ function Forms() { terms_conditions: false }) - const validForm = formDetails.first_name && formDetails.last_name && formDetails.email && formDetails.phone_number && formDetails.subject && formDetails.message - + const handleChange = ({target:{name, value}}) => { - setFormDetails(prev => ({...prev, [name]:value})) + if(name == 'terms_conditions'){ + setFormDetails(prev => ({...prev, [name]:!prev.terms_conditions})) + }else{ + setFormDetails(prev => ({...prev, [name]:value})) + } } - + const [requestStatus, setRequestStatus] = useState({loading:false, status:false, msg:''}) - + + const validForm = formDetails.first_name && formDetails.last_name && formDetails.email && formDetails.phone_number && formDetails.subject && formDetails.message function handleSubmit(e) { e.preventDefault() + const isChecked = formDetails.terms_conditions setRequestStatus({loading:true, status:false, msg:''}) if(!validForm){ - setRequestStatus({loading:false, status:false, msg:'please, fill all fields'}) + setRequestStatus({loading:false, status:false, msg:'Please, fill all fields'}) + setTimeout(()=>{ + setRequestStatus({loading:false, status:false, msg:''}) + },3000) + return + } + if(!(/^\d{7,15}$/.test(formDetails.phone_number))){ + setRequestStatus({loading:false, status:false, msg:'Please, enter a valid phone number'}) + setTimeout(()=>{ + setRequestStatus({loading:false, status:false, msg:''}) + },3000) + return + } + if(!isChecked){ + setRequestStatus({loading:false, status:false, msg:'Please, Accept Terms & Conditions'}) setTimeout(()=>{ setRequestStatus({loading:false, status:false, msg:''}) },3000) @@ -135,14 +154,14 @@ function Forms() { type="email" name="email" placeholder="Email Address" - maxLength={35} + maxLength={55} onChange={handleChange} value={formDetails.email} />
- +