diff --git a/frontend/src/app/buyer/fundraiser/[id]/cart/components/CartForm.tsx b/frontend/src/app/buyer/fundraiser/[id]/cart/components/CartForm.tsx index e726c895..d4bb428d 100644 --- a/frontend/src/app/buyer/fundraiser/[id]/cart/components/CartForm.tsx +++ b/frontend/src/app/buyer/fundraiser/[id]/cart/components/CartForm.tsx @@ -16,7 +16,7 @@ import { noAuthFetcher } from "@/lib/fetcher"; import Decimal from "decimal.js"; import Image from "next/image"; -export function CartForm({ code }: { code: string }) { +export function CartForm({ referrer }: { referrer: string }) { const router = useRouter(); const params = useParams(); const fundraiserId = params.id as string; @@ -59,7 +59,9 @@ export function CartForm({ code }: { code: string }) { const removals: string[] = []; cart.forEach((cartItem) => { - const availabilityItem = items.find((item) => item.id === cartItem.item.id); + const availabilityItem = items.find( + (item) => item.id === cartItem.item.id, + ); if (!availabilityItem || availabilityItem.offsale) { removeItem(fundraiserId, cartItem.item); @@ -117,13 +119,17 @@ export function CartForm({ code }: { code: string }) { const handleIncrement = (item: typeof CompleteItemSchema._type) => { const cartItem = cartWithImages.find((ci) => ci.item.id === item.id); if (cartItem) { - const availabilityItem = items?.find((availability) => availability.id === item.id); + const availabilityItem = items?.find( + (availability) => availability.id === item.id, + ); if ( availabilityItem?.available !== null && availabilityItem?.available !== undefined && cartItem.quantity + 1 > availabilityItem.available ) { - toast.error(`Only ${availabilityItem.available} available for ${item.name}`); + toast.error( + `Only ${availabilityItem.available} available for ${item.name}`, + ); return; } updateQuantity(fundraiserId, item, cartItem.quantity + 1); @@ -142,8 +148,8 @@ export function CartForm({ code }: { code: string }) { }; const handleCheckout = async () => { - const nextCheckoutPath = code - ? `/buyer/fundraiser/${fundraiserId}/checkout?code=${code}` + const nextCheckoutPath = referrer + ? `/buyer/fundraiser/${fundraiserId}/checkout?referrer=${referrer}` : `/buyer/fundraiser/${fundraiserId}/checkout`; // Check if user is already authenticated diff --git a/frontend/src/app/buyer/fundraiser/[id]/cart/page.tsx b/frontend/src/app/buyer/fundraiser/[id]/cart/page.tsx index 01dac133..67ef3929 100644 --- a/frontend/src/app/buyer/fundraiser/[id]/cart/page.tsx +++ b/frontend/src/app/buyer/fundraiser/[id]/cart/page.tsx @@ -7,17 +7,17 @@ export default async function CartPage({ searchParams, }: { params: Promise<{ id: string }>; - searchParams: Promise<{ code?: string }>; + searchParams: Promise<{ referrer?: string }>; }) { await connection(); const supabase = await createClient(); const id = (await params).id; - const { code } = await searchParams; + const { referrer } = await searchParams; const nextPath = - typeof code === "string" && code.length > 0 - ? `/buyer/fundraiser/${id}/cart?code=${encodeURIComponent(code)}` + typeof referrer === "string" && referrer.length > 0 + ? `/buyer/fundraiser/${id}/cart?referrer=${encodeURIComponent(referrer)}` : `/buyer/fundraiser/${id}/cart`; // protect page (must use supabase.auth.getUser() according to docs) @@ -40,7 +40,7 @@ export default async function CartPage({ return (