Skip to content

Commit 7852115

Browse files
committed
update
1 parent 6db250d commit 7852115

File tree

2 files changed

+33
-12
lines changed

2 files changed

+33
-12
lines changed

index.html

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -146,14 +146,7 @@
146146
}(window.location))
147147
</script>
148148

149-
<!-- Twitter conversion tracking base code -->
150-
<script>
151-
!function(e,t,n,s,u,a){e.twq||(s=e.twq=function(){s.exe?s.exe.apply(s,arguments):s.queue.push(arguments);
152-
},s.version='1.1',s.queue=[],u=t.createElement(n),u.async=!0,u.src='https://static.ads-twitter.com/uwt.js',
153-
a=t.getElementsByTagName(n)[0],a.parentNode.insertBefore(u,a))}(window,document,'script');
154-
twq('config','ql07b');
155-
</script>
156-
<!-- End Twitter conversion tracking base code -->
149+
157150

158151

159152

@@ -182,6 +175,18 @@
182175
gtag('config', 'G-HYXMNMH4WX');
183176
</script>
184177

178+
<!-- Twitter conversion tracking base code -->
179+
<script>
180+
!function (e, t, n, s, u, a) {
181+
e.twq || (s = e.twq = function () {
182+
s.exe ? s.exe.apply(s, arguments) : s.queue.push(arguments);
183+
}, s.version = '1.1', s.queue = [], u = t.createElement(n), u.async = !0, u.src = 'https://static.ads-twitter.com/uwt.js',
184+
a = t.getElementsByTagName(n)[0], a.parentNode.insertBefore(u, a))
185+
}(window, document, 'script');
186+
twq('config', 'ql07b');
187+
</script>
188+
<!-- End Twitter conversion tracking base code -->
189+
185190
</head>
186191

187192
<body>

src/pages/RegisterPage.tsx

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ export default function RegisterPage() {
2121
const [isLoading, setIsLoading] = useState(false);
2222
const [error, setError] = useState("");
2323
const [successMessage, setSuccessMessage] = useState("");
24+
const [lastRegisteredEmail, setLastRegisteredEmail] = useState<string | null>(null);
2425

2526
// Check if public registration is enabled
2627
const publicRegistrationEnabled = import.meta.env.VITE_ENABLE_PUBLIC_REGISTRATION !== 'false';
@@ -41,11 +42,25 @@ export default function RegisterPage() {
4142
}, [isAuthenticated, navigate]);
4243

4344
useEffect(() => {
44-
if (successMessage && typeof window !== 'undefined' && typeof window.twq === 'function') {
45-
// Fire Twitter conversion event when confirmation modal is shown
46-
window.twq('event', 'tw-ql07b-ql07b', {});
45+
if (!successMessage || !lastRegisteredEmail) {
46+
return;
47+
}
48+
49+
if (typeof window === 'undefined' || typeof window.twq !== 'function') {
50+
return;
51+
}
52+
53+
const normalizedEmail = lastRegisteredEmail.trim().toLowerCase();
54+
55+
try {
56+
window.twq('event', 'tw-ql07b-ql0xk', {
57+
email_address: normalizedEmail || null,
58+
});
59+
} catch (conversionError) {
60+
console.warn('Twitter conversion event failed, sending fallback payload', conversionError);
61+
window.twq('event', 'tw-ql07b-ql0xk', {});
4762
}
48-
}, [successMessage]);
63+
}, [successMessage, lastRegisteredEmail]);
4964

5065
const handleRegister = async (e: React.FormEvent) => {
5166
e.preventDefault();
@@ -85,6 +100,7 @@ export default function RegisterPage() {
85100
if (result.success) {
86101
setSuccessMessage("Registration successful! Please check your email to verify your account.");
87102
setError("");
103+
setLastRegisteredEmail(email);
88104
// Clear form
89105
setUsername("");
90106
setEmail("");

0 commit comments

Comments
 (0)