"use client";
import { useLocation, useParams, Link } from "@/lib/router";
import { useQuery } from "@tanstack/react-query";
import { Button } from "@/components/ui/button";
import { api } from "@/lib/api";
import PaymentResult from "@/components/PaymentResult";
import { formatJalali } from "@/lib/utils";
import Markdown from '@/components/Markdown';
import { Helmet } from "@/lib/helmet";
export default function EventFreeSuccessPage() {
const { slug } = useParams();
const search = new URLSearchParams(useLocation().search);
const registrationId = search.get("registration_id") || "";
const { data, isLoading, isError } = useQuery({
queryKey: ["registration-verify", registrationId],
queryFn: () =>
registrationId ? api.verifyMyRegistration(registrationId) : Promise.resolve(null),
enabled: Boolean(registrationId),
});
const registrationCodeFull = (data?.ticket_id || registrationId || "").trim();
const registrationCodeShort = registrationCodeFull
? (registrationCodeFull.split("-")[0] || registrationCodeFull).slice(0, 8)
: "";
const siteUrl = 'https://east-guilan-ce.ir';
const siteName = 'East Guilan CE';
const canonicalUrl = slug ? `${siteUrl}/events/${slug}/success` : `${siteUrl}/events`;
const registrationTitle = data?.event_title || slug || 'Event registration';
const ticketSummary = registrationCodeShort ? ` Ticket: ${registrationCodeShort}.` : '';
const pageState = isLoading
? 'Verifying registration'
: isError || !data
? 'Registration not found'
: 'Registration confirmed';
const pageTitle = `${pageState} | ${siteName}`;
const registrationCode = registrationId || 'your registration';
const pageDescription = data
? `Registration confirmed for ${registrationTitle}.${ticketSummary}`
: isError
? `We could not verify ${registrationCode}.`
: registrationId
? `Verifying registration ${registrationId} for ${registrationTitle}.`
: 'Review your registration status and ticket details.';
const helmet = (
{registrationCodeShort || "—"}
},
{ label: "وضعیت", value: faStatus(data.status) },
...(data.registered_at ? [{ label: "تاریخ ثبتنام", value: formatJalali(data.registered_at) }] : []),
{ label: "مبلغ", value: "رایگان" },
];
return renderWithHelmet(