<?php
namespace PayCal\Admin;

defined('ABSPATH') || exit;

use PayCal\Permissions\Access;

class Page_Marketplace {
  public static function render(): void {
    Access::enforce('bundles');

    $current_plan = strtolower((string) get_option('paycal_plan', 'starter'));

    $plans = [
      'starter' => [
        'title' => 'Starter',
        'price' => '₪49 / חודש',
        'tag'   => 'להתחלה',
        'features' => [
          'Bit בחינם',
          'תשלום בכרטיס אשראי לפי החבילה',
          'חשבוניות כלולות בחבילה',
          'אתר אחד',
          'עדכונים שוטפים',
        ],
      ],
      'pro' => [
        'title' => 'Pro',
        'price' => '₪99 / חודש',
        'tag'   => 'מומלץ',
        'features' => [
          'Bit בחינם',
          'תשלום בכרטיס אשראי לפי החבילה',
          'חשבוניות כלולות בחבילה',
          'עד 3 אתרים',
          'תבניות מתקדמות + ללא מיתוג PayCal',
        ],
      ],
      'agency' => [
        'title' => 'Agency',
        'price' => '₪249 / חודש',
        'tag'   => 'לסוכנויות',
        'features' => [
          'Bit בחינם',
          'תשלום בכרטיס אשראי לפי החבילה',
          'חשבוניות כלולות בחבילה',
          '10+ אתרים',
          'ניהול צוות ו-Audit מתקדם',
        ],
      ],
    ];

    echo '<div class="wrap paycal-wrap">';
    echo '<section class="paycal-header paycal-market-hero">';
    echo '  <div class="paycal-market-hero__content">';
    echo '    <div class="paycal-market-hero__lock" aria-hidden="true"><img src="' . esc_url(PAYCAL_URL . 'assets/images/paycal-baroque-lock-clean-117.png') . '" alt=""></div>';
    echo '    <div class="paycal-market-hero__text">';
    echo '      <h1>PayCal - ערכות</h1>';
    echo '      <p>בחרי את החבילה המתאימה לך. Bit ניתן בחינם, תשלום בכרטיס אשראי זמין לפי החבילה, וחשבוניות כלולות בתוך הערכות.</p>';
    echo '    </div>';
    echo '  </div>';
    echo '</section>';

    echo '<div class="paycal-bundles-intro">';
    echo '<span class="paycal-current-plan">החבילה הנוכחית שלך: ' . esc_html(ucfirst($current_plan)) . '</span>';
    echo '<div class="paycal-bundle-note"><strong>מה כלול?</strong> Bit בחינם בכל החבילות • סליקת אשראי לפי החבילה • חשבוניות כחלק מהחבילה</div>';
    echo '</div>';

    echo '<div class="paycal-grid paycal-bundles-grid">';
    foreach ($plans as $key => $plan) {
      $is_current = ($current_plan === $key);
      $classes = 'paycal-card paycal-bundle-card';
      if ($key === 'pro') $classes .= ' is-featured';
      if ($is_current) $classes .= ' is-current-plan';

      echo '<div class="' . esc_attr($classes) . '">';
      echo '  <div class="paycal-bundle-head">';
      echo '    <div>';
      echo '      <h2>' . esc_html($plan['title']) . '</h2>';
      echo '      <span class="paycal-plan-tag">' . esc_html($plan['tag']) . '</span>';
      echo '    </div>';
      if ($is_current) {
        echo '  <span class="paycal-plan-badge">החבילה שלך</span>';
      }
      echo '  </div>';

      echo '  <div class="paycal-bundle-price">' . esc_html($plan['price']) . '</div>';

      echo '  <ul class="paycal-bundle-list">';
      foreach ($plan['features'] as $feature) {
        echo '<li>' . esc_html($feature) . '</li>';
      }
      echo '  </ul>';

      echo '  <div class="paycal-bundle-meta">';
      echo '    <span><strong>Bit:</strong> חינם</span>';
      echo '    <span><strong>אשראי:</strong> לפי החבילה</span>';
      echo '    <span><strong>חשבוניות:</strong> כלול</span>';
      echo '  </div>';

      if ($is_current) {
        echo '  <a class="button disabled" href="#" aria-disabled="true">החבילה פעילה</a>';
      } else {
        $btn = ($key === 'pro') ? 'שדרג ל‑Pro' : 'בחר חבילה';
        echo '  <a class="paycal-btn-primary" href="https://paycal.online/pricing/" target="_blank" rel="noopener noreferrer">' . esc_html($btn) . '</a>';
      }

      echo '</div>';
    }
    echo '</div>';

    self::shipping_evidence_concept();
    echo '</div>';
  }

  private static function shipping_evidence_concept(): void {
    $timeline = [
      'תשלום התקבל',
      'טיפול בהזמנה התחיל',
      'פרטי משלוח נוספו',
      'פרטי מעקב שותפו עם הלקוח',
      'הוכחת מסירה צורפה',
      'סופק כמוצר דיגיטלי / שירות',
      'הראיות נשמרו ב־PayCal',
      'הערת מוכר נוספה',
      'עדכון נשלח ללקוח',
    ];

    $statuses = [
      'חסרה הוכחת משלוח',
      'פרטי משלוח נשמרו',
      'פרטי מעקב נקלטו במערכת',
      'ההזמנה סומנה כשירות / מוצר דיגיטלי',
      'הוכחת מסירה צורפה',
      'ההזמנה מוכנה להגנת מוכר',
      'ההוכחות נשמרו למקרה של בירור / מחלוקת',
    ];

    $fields = [
      'מזהה תשלום פנימי של PayCal',
      'מספר מעקב',
      'חברת שילוח',
      'סטטוס משלוח',
      'תאריך משלוח',
      'קישור מעקב',
      'קובץ / תמונה / מסמך הוכחת מסירה',
      'הערת מוכר פנימית',
      'מקור: WooCommerce / ידני / API',
      'סטטוס סנכרון הוכחות',
    ];

    echo '<section class="paycal-card paycal-roadmap-card paycal-shipping-evidence" dir="rtl">';
    echo '  <div class="paycal-roadmap-head">';
    echo '    <span class="paycal-plan-tag">Roadmap / Planned</span>';
    echo '    <h2>הוספת הוכחת משלוח ל־PayCal</h2>';
    echo '    <p>PayCal מתוכנן לשמש כיומן ראיות מסונכרן בין המוכר, הלקוח ו־PayCal: תשלום, טיפול בהזמנה, עדכוני לקוח, משלוח, מסירה, מוצר דיגיטלי / שירות ותיעוד מוכן לבירור או מחלוקת.</p>';
    echo '    <p class="paycal-roadmap-note">זהו מודול מתוכנן בלבד בשלב זה. אין כאן עדיין אינטגרציית משלוחים פעילה, העלאת קבצים, שינוי סטטוס הזמנה או סנכרון חיצוני.</p>';
    echo '  </div>';

    echo '  <div class="paycal-evidence-actions" aria-label="PayCal evidence actions preview">';
    echo '    <button type="button" class="button button-primary" disabled>שמור פרטי משלוח</button>';
    echo '    <button type="button" class="button" disabled>שלח פרטי מעקב ל־PayCal</button>';
    echo '    <button type="button" class="button" disabled>סמן כמוצר דיגיטלי / שירות</button>';
    echo '    <button type="button" class="button" disabled>הוסף הוכחת מסירה</button>';
    echo '  </div>';

    echo '  <div class="paycal-evidence-grid">';
    echo '    <div>';
    echo '      <h3>יומן ראיות מתוכנן</h3>';
    echo '      <ol class="paycal-evidence-timeline">';
    foreach ($timeline as $item) {
      echo '        <li>' . esc_html($item) . '</li>';
    }
    echo '      </ol>';
    echo '    </div>';

    echo '    <div>';
    echo '      <h3>סטטוסים מתוכננים</h3>';
    echo '      <ul class="paycal-evidence-list">';
    foreach ($statuses as $status) {
      echo '        <li>' . esc_html($status) . '</li>';
    }
    echo '      </ul>';
    echo '    </div>';

    echo '    <div>';
    echo '      <h3>שדות PayCal מתוכננים</h3>';
    echo '      <ul class="paycal-evidence-list">';
    foreach ($fields as $field) {
      echo '        <li>' . esc_html($field) . '</li>';
    }
    echo '      </ul>';
    echo '    </div>';
    echo '  </div>';

    echo '  <p class="paycal-roadmap-note">המטרה: PayCal יהפוך לשכבת ראיות אמינה לעסקים יצירתיים - תשלום, טיפול בהזמנה, עדכוני לקוח, הוכחת מסירה ותיעוד מוכן למחלוקת.</p>';
    echo '</section>';
  }
}
