From 4c2c24d9df54e42e2fda79d9eacfbc9d0c168174 Mon Sep 17 00:00:00 2001 From: manmeet Date: Tue, 8 Apr 2025 16:01:06 +0530 Subject: [PATCH 1/2] Bug #760: fixed age validation --- client/src/pages/Profile.jsx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/client/src/pages/Profile.jsx b/client/src/pages/Profile.jsx index cc9a694d..5c81a629 100644 --- a/client/src/pages/Profile.jsx +++ b/client/src/pages/Profile.jsx @@ -213,8 +213,11 @@ const Profile = () => { ref={ageRef} min="12" onChange={(e) => { - if (e.target.value < 12) { - e.target.value = '12'; + const value = Number(e.target.value); + if (value < 12) { + e.target.value = 12; + } else if (value > 120) { + e.target.value = 120; } }} /> From 620b56fc77df73a32d26703e2f16e6ace60e66cf Mon Sep 17 00:00:00 2001 From: manmeet Date: Tue, 8 Apr 2025 22:26:24 +0530 Subject: [PATCH 2/2] allowed age validation on submit only --- client/src/pages/Profile.jsx | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/client/src/pages/Profile.jsx b/client/src/pages/Profile.jsx index 5c81a629..5dcd09f3 100644 --- a/client/src/pages/Profile.jsx +++ b/client/src/pages/Profile.jsx @@ -16,6 +16,7 @@ const Profile = () => { const [isImageSafe, setImageSafe] = useState(false); const { authState, dispatchAuth } = useAuth(); const [loading, setLoading] = useState(false); + const [age, setAge] = useState('') const { logout } = useKindeAuth(); const aboutRef = useRef(null); @@ -97,6 +98,12 @@ const Profile = () => { formData.append('username', username); formData.append('aboutMe', aboutRef.current.value); formData.append('gender', genderRef.current.value); + const numericAge = Number(age); + if (isNaN(numericAge) || numericAge < 12 || numericAge > 120) { + setProfileResponse('Error: Please enter a valid age between 12 and 120.'); + setLoading(false); + return; + } formData.append('age', Number(ageRef.current.value)); if (imageFile && isImageSafe) { @@ -212,13 +219,9 @@ const Profile = () => { className="outline-none bg-transparent text-right" ref={ageRef} min="12" + max="120" onChange={(e) => { - const value = Number(e.target.value); - if (value < 12) { - e.target.value = 12; - } else if (value > 120) { - e.target.value = 120; - } + setAge(e.target.value) }} />