'use client'; import { useState, useEffect } from 'react'; import Link from 'next/link'; interface Props { isOpen: boolean; onClose: () => void; productName: string; price: string; bankInfo?: { bank: string; account: string; holder: string; }; } const DEFAULT_BANK = { bank: '케이뱅크', account: '100-116-337157', holder: '박재오', }; export default function PurchaseAgreementModal({ isOpen, onClose, productName, price, bankInfo = DEFAULT_BANK, }: Props) { const [agreed, setAgreed] = useState(false); const [email, setEmail] = useState(''); const [sent, setSent] = useState(false); const [loading, setLoading] = useState(false); useEffect(() => { if (!isOpen) { setAgreed(false); setEmail(''); setSent(false); } }, [isOpen]); if (!isOpen) return null; const handleSubmit = async () => { if (!agreed || !email) return; setLoading(true); try { await fetch('/api/contact', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ service: `구매 신청: ${productName}`, name: email.split('@')[0], email, phone: '', message: `상품: ${productName} (${price})\n입금 대기 중. 입금 확인 후 이메일로 상품 전달 예정.`, }), }); setSent(true); } catch (e) { alert('신청 전송 실패. 다시 시도해주세요.'); } finally { setLoading(false); } }; return (
e.stopPropagation()} >

{productName}

{price}

{sent ? (

신청 완료

아래 계좌로 입금해주시면 24시간 이내 이메일로 상품을 전달드립니다.

입금 계좌

{bankInfo.bank} {bankInfo.account}

예금주 {bankInfo.holder}

) : (
setEmail(e.target.value)} placeholder="your@email.com" className="w-full px-4 py-3 border border-slate-300 rounded-xl text-sm focus:outline-none focus:border-violet-500" />

📌 구매 전 확인사항

  • 본 상품은 디지털 콘텐츠로, 제공 시작(이메일 전달) 후에는 전자상거래법 제17조 제2항 제5호에 따라 청약철회(환불)가 제한됩니다.
  • 구매 전 랜딩 페이지의 샘플 미리보기·무료 체험 구간을 반드시 확인해주세요.
  • 파일 손상·전달 누락 등 회사 귀책 사유 시 즉시 재전달 또는 전액 환불됩니다.
  • 자세한 내용은{' '} 환불 정책 {' '} 참조.

💳 결제 방법: 계좌이체

{bankInfo.bank} {bankInfo.account} ({bankInfo.holder})

신청 후 위 계좌로 입금하시면 24시간 이내 이메일 전달.

)}
); }