// src/app/offer/payment-web/route.js
export async function GET(request) {
  const { searchParams } = new URL(request.url);

  const Status = searchParams.get("Status");
  const Authority = searchParams.get("Authority");

  // ❗ چک ضروری
  if (Status !== "OK" || !Authority) {
    return new Response(
      `<div style="text-align:center;margin-top:100px;font-family:tahoma;direction:rtl">
         <h2 style="color:#e74c3c">✗ پرداخت لغو شد یا ناموفق بود</h2>
         <a href="/">برگشت به خانه</a>
       </div>`,
      { status: 200, headers: { "Content-Type": "text/html; charset=utf-8" } }
    );
  }

  const receiverId = searchParams.get("receiverId");
  const offerType = searchParams.get("offerType");
  const userId = searchParams.get("userId");
  
  const backendUrl = `https://app.modstagram.ir/api/v1/offers/payment-web?receiverId=${receiverId}&offerType=${offerType}&userId=${userId}&Authority=${Authority}&Status=${Status}`;
  

  try {
    const backendResponse = await fetch(backendUrl, {
      method: "GET",
      headers: {
        "Content-Type": "application/json",
      },
      cache: "no-store",
    });

    const result = await backendResponse.json();

    if (backendResponse.ok && result.success) {
      return new Response(
        `<div style="text-align:center;margin-top:100px;font-family:tahoma;direction:rtl">
           <h2 style="color:#27ae60">✓ پرداخت با موفقیت انجام شد</h2>
           <p>شماره تراکنش: <b>${result.ref_id || "دریافت شد"}</b></p>
           <p>آفر با موفقیت ارسال شد ✅</p>
           <script>setTimeout(()=>location.href="/", 5000)</script>
           <a href="/">برگشت به خانه</a>
         </div>`,
        { status: 200, headers: { "Content-Type": "text/html; charset=utf-8" } }
      );
    } else {
      return new Response(
        `<div style="text-align:center;margin-top:100px;font-family:tahoma;direction:rtl">
           <h2 style="color:#e74c3c">✗ خطا در ثبت آفر</h2>
           <p>${result.message || "خطای ناشناخته"}</p>
           <a href="/">برگشت به خانه</a>
         </div>`,
        { status: 200 }
      );
    }
  } catch (err) {
    console.error('Callback Error:', err); // برای دیباگ
    return new Response(
      `<div style="text-align:center;margin-top:100px;font-family:tahoma;direction:rtl">
         <h2 style="color:#e74c3c">خطای سرور</h2>
         <p>لطفاً دوباره تلاش کنید</p>
         <a href="/">برگشت به خانه</a>
       </div>`,
      { status: 500 }
    );
  }
}
