MVA Global Fret static HTML site (mirror of GitHub MVA-Global-Fret/site-mva-global-fret) � deployed to VPS Falkenstein for mva-globalfret.com
Go to file
Serge RAKOTO HARRY-NAIVO 7044c37ec9 feat(worker): re-enable welcome-back email via Worker + Resend (footer 2026)
Replaces EmailJS-based welcome-back (disabled in PR #6 because the
EmailJS account is Melissa-only with obsolete '(c) 2025' footer) with
a Worker action that delegates to Resend, ensuring same '\xc2\xa9 2026'
footer as all other transactional emails.

Worker side:
- New action 'sendWelcomeBack' validates Turnstile + searches HubSpot
  contact by email (404 if not found, prevents spam to non-existing).
- New function sendWelcomeBackViaResend: same navy/gold visual
  identity as other Resend emails. Subject includes existing ref
  (= 'Vous \xc3\xaates d\xc3\xa9j\xc3\xa0 inscrit chez MVA Global Fret \xe2\x80\x94 R\xc3\xa9f\xc3\xa9rence MVA-XXX').
  Idempotent: zero HubSpot writes.

Frontend (form-handler.js):
- sendWelcomeBackEmail rewritten to POST Worker action sendWelcomeBack
  instead of emailjs.send. Reuses window.turnstileToken.
- Re-enabled call inside showAlreadyRegistered.

Smoke tests:
- 400 'email requis' without email
- 403 'Turnstile validation failed' without valid token
- Full flow testable via browser only (= real Turnstile challenge).

Refs: post-cutover polish, fixes Issue 1 footer 2025 from E2E retest.
2026-05-07 15:43:30 +02:00
.claude Swap colorkey'd cloud for Microsoft Fluent 3D cloud emoji 2026-05-05 01:50:44 +02:00
.github/workflows Add Actions-based Pages deploy workflow 2026-05-05 17:05:13 +02:00
assets Switch parcel sprites to a real 3D parachute GLB with bound cargo 2026-05-05 13:32:48 +02:00
cloudflare-worker feat(worker): re-enable welcome-back email via Worker + Resend (footer 2026) 2026-05-07 15:43:30 +02:00
css Service Commande: redesign 'Et le transport ?' card 2026-05-06 08:40:14 +02:00
images feat(images): self-host hero photos from Unsplash (#1) 2026-05-07 01:01:54 +03:00
js feat(worker): re-enable welcome-back email via Worker + Resend (footer 2026) 2026-05-07 15:43:30 +02:00
.gitignore
about.html chore(post-cutover): fix 3 polish bugs (welcome-back, mobile lang switcher, animate-on-scroll) (#6) 2026-05-07 16:36:28 +03:00
accueil.html chore(post-cutover): fix 3 polish bugs (welcome-back, mobile lang switcher, animate-on-scroll) (#6) 2026-05-07 16:36:28 +03:00
application.html chore(post-cutover): fix 3 polish bugs (welcome-back, mobile lang switcher, animate-on-scroll) (#6) 2026-05-07 16:36:28 +03:00
cgv.html chore(post-cutover): fix 3 polish bugs (welcome-back, mobile lang switcher, animate-on-scroll) (#6) 2026-05-07 16:36:28 +03:00
confirmation.html confirmation.html: center button text in action row 2026-05-06 16:54:40 +02:00
contact.html chore(post-cutover): fix 3 polish bugs (welcome-back, mobile lang switcher, animate-on-scroll) (#6) 2026-05-07 16:36:28 +03:00
guide-envoi.html chore(post-cutover): fix 3 polish bugs (welcome-back, mobile lang switcher, animate-on-scroll) (#6) 2026-05-07 16:36:28 +03:00
index.html Switch parcel sprites to a real 3D parachute GLB with bound cargo 2026-05-05 13:32:48 +02:00
mentions-legales.html chore(post-cutover): fix 3 polish bugs (welcome-back, mobile lang switcher, animate-on-scroll) (#6) 2026-05-07 16:36:28 +03:00
PNG MVA GLOBAL FRET.png
politique-confidentialite.html chore(post-cutover): fix 3 polish bugs (welcome-back, mobile lang switcher, animate-on-scroll) (#6) 2026-05-07 16:36:28 +03:00
reset-password.html feat(seo): sitemap + robots.txt + mobile reset-password bridge (#2) 2026-05-07 01:04:05 +03:00
robots.txt feat(seo): sitemap + robots.txt + mobile reset-password bridge (#2) 2026-05-07 01:04:05 +03:00
service-commande.html chore(post-cutover): fix 3 polish bugs (welcome-back, mobile lang switcher, animate-on-scroll) (#6) 2026-05-07 16:36:28 +03:00
sitemap.xml feat(seo): sitemap + robots.txt + mobile reset-password bridge (#2) 2026-05-07 01:04:05 +03:00
tarifs.html chore(post-cutover): fix 3 polish bugs (welcome-back, mobile lang switcher, animate-on-scroll) (#6) 2026-05-07 16:36:28 +03:00