<?php
declare(strict_types=1);

if (session_status() !== PHP_SESSION_ACTIVE) {
    session_start();
}

require_once __DIR__ . '/../db.php';
require_once __DIR__ . '/../inc/layout.php';

if (empty($_SESSION['user_id'])) {
    header('Location: ' . u('index.html?e=1'));
    exit;
}

/* ========= صلاحيات الدخول ========= */
/* مسموح لجميع المستخدمين المسجلين دخول */

$pdo = null;
try {
    if (function_exists('db')) {
        $pdo = db();
    } elseif (isset($GLOBALS['pdo']) && $GLOBALS['pdo'] instanceof PDO) {
        $pdo = $GLOBALS['pdo'];
    }
    if ($pdo instanceof PDO) {
        $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
    }
} catch (Throwable $e) {
    $pdo = null;
}

/* ========= Helpers ========= */
function ai_table_exists(?PDO $pdo, string $table): bool
{
    if (!$pdo instanceof PDO) return false;

    try {
        $st = $pdo->prepare("
            SELECT COUNT(*)
            FROM information_schema.tables
            WHERE table_schema = DATABASE()
              AND table_name = ?
        ");
        $st->execute([$table]);
        return (int)$st->fetchColumn() > 0;
    } catch (Throwable $e) {
        return false;
    }
}

function ai_count_rows(?PDO $pdo, string $table): int
{
    if (!$pdo instanceof PDO || !ai_table_exists($pdo, $table)) {
        return 0;
    }

    try {
        return (int)$pdo->query("SELECT COUNT(*) FROM `{$table}`")->fetchColumn();
    } catch (Throwable $e) {
        return 0;
    }
}

function ai_count_today(?PDO $pdo, string $table, string $dateCol = 'created_at'): int
{
    if (!$pdo instanceof PDO || !ai_table_exists($pdo, $table)) {
        return 0;
    }

    try {
        date_default_timezone_set('Asia/Dubai');
        $today = date('Y-m-d');

        $st = $pdo->prepare("SELECT COUNT(*) FROM `{$table}` WHERE DATE(`{$dateCol}`) = ?");
        $st->execute([$today]);
        return (int)$st->fetchColumn();
    } catch (Throwable $e) {
        return 0;
    }
}

function ai_recent_sessions(?PDO $pdo, int $limit = 5): array
{
    if (
        !$pdo instanceof PDO ||
        !ai_table_exists($pdo, 'ai_chat_sessions')
    ) {
        return [];
    }

    try {
        $limit = max(1, min(20, $limit));
        $st = $pdo->query("
            SELECT id, title, case_id, client_id, updated_at, created_at
            FROM ai_chat_sessions
            ORDER BY updated_at DESC, id DESC
            LIMIT {$limit}
        ");
        return $st->fetchAll() ?: [];
    } catch (Throwable $e) {
        return [];
    }
}

/* ========= إحصائيات ========= */
$totalSessions    = ai_count_rows($pdo, 'ai_chat_sessions');
$totalMessages    = ai_count_rows($pdo, 'ai_chat_messages');
$totalAnalyses    = ai_count_rows($pdo, 'ai_case_analysis');
$totalDocuments   = ai_count_rows($pdo, 'ai_generated_documents');
$todaySessions    = ai_count_today($pdo, 'ai_chat_sessions');
$todayAnalyses    = ai_count_today($pdo, 'ai_case_analysis');
$recentSessions   = ai_recent_sessions($pdo, 6);

render_layout_start('الذكاء القانوني');
?>

<style>
  .ai-hero{
    position:relative;
    overflow:hidden;
    border:1px solid rgba(212,175,55,.22);
    background:
      radial-gradient(700px 220px at 100% 0%, rgba(212,175,55,.10), transparent 55%),
      radial-gradient(500px 180px at 0% 100%, rgba(0,106,122,.18), transparent 55%),
      linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
    border-radius:24px;
    padding:22px;
  }

  .ai-hero h2{
    margin:0 0 8px;
    font-size:30px;
    line-height:1.3;
    font-weight:900;
  }

  .ai-hero p{
    margin:0;
    color:rgba(255,255,255,.78);
    font-size:15px;
    line-height:1.9;
    max-width:920px;
  }

  .ai-hero-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:16px;
  }

  .statsGrid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0,1fr));
    gap:12px;
  }

  .statCard{
    border:1px solid var(--line);
    border-radius:20px;
    background:rgba(255,255,255,.04);
    padding:16px;
    min-width:0;
  }

  .statLabel{
    color:var(--muted);
    font-size:13px;
    margin-bottom:8px;
  }

  .statValue{
    font-size:28px;
    font-weight:900;
    line-height:1.2;
  }

  .statSub{
    margin-top:8px;
    font-size:12px;
    color:rgba(255,255,255,.72);
  }

  .serviceGrid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:14px;
  }

  .serviceCard{
    display:flex;
    flex-direction:column;
    gap:12px;
    border:1px solid var(--line);
    border-radius:22px;
    background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
    padding:18px;
    min-height:220px;
  }

  .serviceTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
  }

  .serviceIcon{
    width:56px;
    height:56px;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:26px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.08);
    flex:0 0 56px;
  }

  .serviceTag{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:7px 10px;
    border-radius:999px;
    font-size:11px;
    font-weight:800;
    color:#f8fafc;
    border:1px solid rgba(0,106,122,.40);
    background:rgba(0,106,122,.16);
    white-space:nowrap;
  }

  .serviceTitle{
    font-size:22px;
    font-weight:900;
    margin:0;
    line-height:1.3;
  }

  .serviceDesc{
    color:rgba(255,255,255,.78);
    font-size:14px;
    line-height:1.9;
    min-height:74px;
  }

  .serviceFoot{
    margin-top:auto;
    display:flex;
    gap:10px;
    flex-wrap:wrap;
  }

  .miniList{
    display:flex;
    flex-direction:column;
    gap:10px;
  }

  .miniRow{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:12px 14px;
    border-radius:16px;
    border:1px solid var(--line);
    background:rgba(255,255,255,.03);
  }

  .miniRow .left{
    min-width:0;
  }

  .miniRow .title{
    font-weight:800;
    font-size:14px;
    line-height:1.7;
  }

  .miniRow .sub{
    color:var(--muted);
    font-size:12px;
    margin-top:2px;
  }

  .quickGrid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:10px;
  }

  .quickBtn{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:14px;
    border-radius:16px;
    border:1px solid var(--line);
    background:rgba(255,255,255,.03);
    color:var(--text);
    text-decoration:none;
    transition:.15s ease;
    font-weight:800;
  }

  .quickBtn:hover{
    transform:translateY(-1px);
    background:rgba(255,255,255,.06);
  }

  .emptyBox{
    border:1px dashed rgba(255,255,255,.18);
    border-radius:18px;
    padding:18px;
    color:rgba(255,255,255,.76);
    line-height:1.9;
    background:rgba(255,255,255,.02);
  }

  @media (max-width: 1200px){
    .statsGrid{
      grid-template-columns:repeat(2, minmax(0,1fr));
    }

    .serviceGrid{
      grid-template-columns:repeat(2, minmax(0,1fr));
    }
  }

  @media (max-width: 760px){
    .statsGrid,
    .serviceGrid,
    .quickGrid{
      grid-template-columns:1fr;
    }

    .ai-hero h2{
      font-size:24px;
    }
  }
</style>

<div class="grid">

  <section class="ai-hero">
    <h2>مركز الذكاء القانوني</h2>
    <p>
      هذا القسم هو الواجهة الرئيسية للذكاء القانوني داخل HLG-ONE، ومن خلاله يمكن الوصول إلى أدوات البحث القانوني،
      تحليل القضايا، إنشاء المذكرات، تحليل العقود، ومراجعة السجل السابق، وكل ذلك من صفحة موحدة تناسب السايدبار الحالي.
    </p>

    <div class="ai-hero-actions">
      <a class="btn" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_chat.php')) ?>">فتح المساعد القانوني</a>
      <a class="btn ghost" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_library.php')) ?>">مكتبة القوانين</a>
      <a class="btn ghost" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_memos.php')) ?>">فحص المذكرات</a>
    </div>
  </section>

  <section class="statsGrid">
    <div class="statCard">
      <div class="statLabel">جلسات الذكاء القانوني</div>
      <div class="statValue"><?= (int)$totalSessions ?></div>
      <div class="statSub">اليوم: <?= (int)$todaySessions ?></div>
    </div>

    <div class="statCard">
      <div class="statLabel">رسائل المحادثات</div>
      <div class="statValue"><?= (int)$totalMessages ?></div>
      <div class="statSub">إجمالي المحفوظ في النظام</div>
    </div>

    <div class="statCard">
      <div class="statLabel">تحليلات القضايا</div>
      <div class="statValue"><?= (int)$totalAnalyses ?></div>
      <div class="statSub">اليوم: <?= (int)$todayAnalyses ?></div>
    </div>

    <div class="statCard">
      <div class="statLabel">المستندات الذكية</div>
      <div class="statValue"><?= (int)$totalDocuments ?></div>
      <div class="statSub">مذكرات وصياغات مولدة</div>
    </div>
  </section>

  <section class="card">
    <div class="cardHead">
      <div>
        <div class="serviceTitle">الخدمات الرئيسية</div>
        <div class="t2">صفحة واحدة موحدة لكل أدوات الذكاء القانوني</div>
      </div>
    </div>

    <div class="serviceGrid">
      <div class="serviceCard">
        <div class="serviceTop">
          <div class="serviceIcon">🤖</div>
          <span class="serviceTag">AI CHAT</span>
        </div>
        <h3 class="serviceTitle">المساعد القانوني</h3>
        <div class="serviceDesc">
          شات داخلي للبحث في القوانين، تلخيص الوقائع، اقتراح دفوع أولية، والإجابة عن الأسئلة القانونية داخل النظام.
        </div>
        <div class="serviceFoot">
          <a class="btn" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_chat.php')) ?>">دخول</a>
        </div>
      </div>

      <div class="serviceCard">
        <div class="serviceTop">
          <div class="serviceIcon">⚖️</div>
          <span class="serviceTag">CASE AI</span>
        </div>
        <h3 class="serviceTitle">تحليل القضايا</h3>
        <div class="serviceDesc">
          تحليل وقائع القضية، إبراز نقاط القوة والضعف، اقتراح الإجراءات القادمة، وتجهيز نظرة أولية للمحامي.
        </div>
        <div class="serviceFoot">
          <a class="btn" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_case.php')) ?>">فتح</a>
        </div>
      </div>

      <div class="serviceCard">
        <div class="serviceTop">
          <div class="serviceIcon">📝</div>
          <span class="serviceTag">MEMOS</span>
        </div>
        <h3 class="serviceTitle">فحص المذكرات</h3>
        <div class="serviceDesc">

قم بإدخال بيانات المذكرة ليتم تحليلها وفحصها قانونياً بشكل أولي واستخراج نقاط القوة والضعف      

</div>

        <div class="serviceFoot">
          <a class="btn" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_memos.php')) ?>">إنشاء</a>
        </div>
      </div>

      <div class="serviceCard">
        <div class="serviceTop">
          <div class="serviceIcon">📄</div>
          <span class="serviceTag">CONTRACTS</span>
        </div>
        <h3 class="serviceTitle">تحليل العقود</h3>
        <div class="serviceDesc">
          مراجعة البنود، استخراج المخاطر، ملاحظة النواقص، وتقديم ملاحظات أولية حول العقود والاتفاقيات.
        </div>
        <div class="serviceFoot">
          <a class="btn" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_contract.php')) ?>">تحليل</a>
        </div>
      </div>

      <div class="serviceCard">
        <div class="serviceTop">
          <div class="serviceIcon">📚</div>
          <span class="serviceTag">LAW DB</span>
        </div>
        <h3 class="serviceTitle">مكتبة القوانين</h3>
        <div class="serviceDesc">
          استعراض القوانين والمواد القانونية والأحكام والسوابق المخزنة داخل النظام بطريقة منظمة وسريعة.
        </div>
        <div class="serviceFoot">
          <a class="btn" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_library.php')) ?>">استعراض</a>
        </div>
      </div>

      <div class="serviceCard">
        <div class="serviceTop">
          <div class="serviceIcon">🕘</div>
          <span class="serviceTag">HISTORY</span>
        </div>
        <h3 class="serviceTitle">سجل المحادثات</h3>
        <div class="serviceDesc">
          مراجعة الجلسات السابقة، الرجوع إلى الأسئلة المطروحة، ومتابعة ما تم إنشاؤه أو تحليله داخل الذكاء القانوني.
        </div>
        <div class="serviceFoot">
          <a class="btn" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_history.php')) ?>">عرض السجل</a>
        </div>
      </div>
    </div>
  </section>

  <section class="card">
    <div class="cardHead">
      <div>
        <div class="serviceTitle">اختصارات سريعة</div>
        <div class="t2">وصول مباشر لأكثر الإجراءات استخدامًا</div>
      </div>
    </div>

    <div class="quickGrid">
      <a class="quickBtn" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_chat.php')) ?>">
        <span>ابدأ سؤالًا قانونيًا جديدًا</span>
        <span>←</span>
      </a>

      <a class="quickBtn" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_case.php')) ?>">
        <span>تحليل قضية قائمة</span>
        <span>←</span>
      </a>

      <a class="quickBtn" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_memos.php')) ?>">
        <span>صياغة مذكرة أولية</span>
        <span>←</span>
      </a>

      <a class="quickBtn" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_contract.php')) ?>">
        <span>تحليل عقد أو اتفاقية</span>
        <span>←</span>
      </a>
    </div>
  </section>

  <section class="card">
    <div class="cardHead">
      <div>
        <div class="serviceTitle">أحدث الجلسات</div>
        <div class="t2">آخر ما تم استخدامه داخل الذكاء القانوني</div>
      </div>
    </div>

    <?php if (empty($recentSessions)): ?>
      <div class="emptyBox">
        لا توجد جلسات محفوظة حتى الآن. بعد بدء استخدام المساعد القانوني ستظهر هنا آخر المحادثات والجلسات.
      </div>
    <?php else: ?>
      <div class="miniList">
        <?php foreach ($recentSessions as $s): ?>
          <?php
            $sid     = (int)($s['id'] ?? 0);
            $title   = trim((string)($s['title'] ?? ''));
            $caseId  = (int)($s['case_id'] ?? 0);
            $clientId= (int)($s['client_id'] ?? 0);
            $updated = trim((string)($s['updated_at'] ?? ''));
            $label   = $title !== '' ? $title : ('جلسة #' . $sid);

            $meta = [];
            if ($caseId > 0)   $meta[] = 'قضية #' . $caseId;
            if ($clientId > 0) $meta[] = 'عميل #' . $clientId;
            if ($updated !== '') $meta[] = $updated;
          ?>
          <div class="miniRow">
            <div class="left">
              <div class="title"><?= h($label) ?></div>
              <div class="sub"><?= h(implode(' • ', $meta)) ?></div>
            </div>

            <a class="btn ghost" href="<?= h(u('HLG-AI-Legal-Core/legal_ai_history.php?session_id=' . $sid)) ?>">فتح</a>
          </div>
        <?php endforeach; ?>
      </div>
    <?php endif; ?>
  </section>

<?php render_layout_end(); ?>