From f33cdff321bf185f6852a779a37561212a3c538d Mon Sep 17 00:00:00 2001 From: Koncept Kit <63216427+konceptkit@users.noreply.github.com> Date: Thu, 11 Dec 2025 22:19:07 +0700 Subject: [PATCH] Stripe fix and email verification fix --- src/pages/VerifyEmail.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/pages/VerifyEmail.js b/src/pages/VerifyEmail.js index 05aa5e5..608aacf 100644 --- a/src/pages/VerifyEmail.js +++ b/src/pages/VerifyEmail.js @@ -1,4 +1,4 @@ -import React, { useEffect, useState } from 'react'; +import React, { useEffect, useState, useRef } from 'react'; import { useNavigate, useSearchParams, Link } from 'react-router-dom'; import axios from 'axios'; import { Button } from '../components/ui/button'; @@ -15,9 +15,16 @@ const VerifyEmail = () => { const [status, setStatus] = useState('loading'); const [message, setMessage] = useState(''); const token = searchParams.get('token'); + const hasVerified = useRef(false); useEffect(() => { const verifyEmail = async () => { + // Prevent double execution in React StrictMode + if (hasVerified.current) { + return; + } + hasVerified.current = true; + if (!token) { setStatus('error'); setMessage('Invalid verification link.');