<?php
// تضمين الكلاس وملف إعدادات الاتصال
include '../inc/SecureIdHandler.php'; // تضمين الكلاس
include 'db.php';

// -----------------------------------------------------------------
// 💡 تحديد معرف العقد من رابط URL (استخدام GET)
// -----------------------------------------------------------------

// التحقق مما إذا كان 'id' موجوداً في رابط URL
if (isset($_GET['id'])) {
    $encrypted_id = $_GET['id'];
    
    // فك تشفير المعرف باستخدام الكلاس
    $decrypted_id = SecureIdHandler::decryptId($encrypted_id);
    
    if ($decrypted_id === false) {
        die('<h1>خطأ</h1><p style="text-align: center; direction: rtl;">فشل في فك تشفير المعرف أو تم تعديل الرابط.</p>');
    }
    
    // تحويل القيمة إلى عدد للتأكد من أنها رقم
    $contract_id = intval($decrypted_id);
    
    // تحقق إذا كان المعرف صحيح (يجب أن يكون رقم موجب)
    if ($contract_id <= 0) {
        die('<h1>خطأ</h1><p style="text-align: center; direction: rtl;">معرّف العقد غير صحيح أو تم تعديل الرابط.</p>');
    }
} else {
    // إذا لم يكن ID موجوداً، أوقف العملية
    die('<h1>خطأ</h1><p style="text-align: center; direction: rtl;">يجب تحديد معرّف العقد في رابط الصفحة (URL).</p>');
}

try {
    $pdo = new PDO($dsn, $user, $pass, $options);
    
    // 💡 تحديث الاستعلام لجلب مسارات الصور
    $sql = "SELECT 
                worker_name, worker_job, worker_id, worker_nationality, 
                provider_name, provider_number, receiver_name, receiver_number, 
                contract_summary, permit_start, permit_end, work_location,
                qr_code_path, barcode_path 
            FROM contracts 
            WHERE id = :id";
            
    $stmt = $pdo->prepare($sql);
    $stmt->bindParam(':id', $contract_id, PDO::PARAM_INT);
    $stmt->execute();
    $contract = $stmt->fetch();

    if (!$contract) {
        die('<h1>خطأ</h1><p style="text-align: center; direction: rtl;">لم يتم العثور على عقد بهذا المعرّف.</p>');
    }

} catch (\PDOException $e) {
    die('<h1>خطأ في قاعدة البيانات</h1><p style="text-align: center; direction: rtl;">فشل جلب البيانات: ' . htmlspecialchars($e->getMessage()) . '</p>');
}

// -----------------------------------------------------------------
// 3. عرض البنية مع البيانات الديناميكية (مع مسارات الصور)
// -----------------------------------------------------------------
?>


<!doctype html>
<html lang="ar">
  <head>
    <meta charset="UTF-8" />

    <title>تصريح أجير - تعاقد أجير</title>
    <link rel="stylesheet" href="style.css" />

    <link
      href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css"
      rel="stylesheet"
    />
    <link rel="preconnect" href="https://fonts.googleapis.com" />
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
    <link
      href="https://fonts.googleapis.com/css2?family=Noto+Kufi+Arabic:wght@100..900&display=swap"
      rel="stylesheet"
    />
    
    <style>
      :root {
  --border: #d1d5db;
  --bg-section: #e7ecef;
  --text: #111827;
}




.section-title {
  background: var(--bg-section);
  text-align: right;
  font-weight: 700;
}


.label {
  background: var(--bg-section);
  width: 22%;
  white-space: nowrap;
}
.barcode {
    width: 91px;
    height: 94px;
    margin-right: 9px;
    margin-top: -17px;
}
.numberQr {
    font-weight: 600;
    font-size: 14px;
    margin-top: -11px;
    margin-right: 13px;
    position: relative;
    top: 60px;
    left: 98px;
}

    </style>
  </head>
  <body>
    <div class="page-wrapper">
      <button onclick="downloadPDF()" class="download-btn">تحميل PDF</button>

      <div class="page container top" id="permitPage">
        <div class="content">
          <div class="header-right">
            <div class="logos">
              <img class="mlsd" src="imgs/mlsd-logo.png" alt="Ajeer" class="logo" />
              <img src="imgs/ajeer-logo.png" alt="HRSD" class="logo" />
            </div>
          </div>
          <h1 class="main-title" id="docTitle">تصريح أجير – تعاقد أجير</h1>

       <div class="qr-box">
             <a
              href="https://www.google.com"
              style="
                display: flex;
                justify-content: center;
                align-items: center;
              "
              id="qr-link"
            >
              <?php if (!empty($contract['barcode_path'])): ?>
            <img 
                src="<?php echo htmlspecialchars($contract['barcode_path']); ?>" 
                alt="الباركود" 
                class="barcode" 
                 
            />
            <?php else: ?>
                <p>لا يوجد باركود لهذا العقد.</p>
            <?php endif; ?>
              </a>
            <p class="numberQr" id="trackingNumber"></p>
          </div>
        </div>

        <p class="intro" id="introText">
          نشعركم أنه تم التعاقد من قبلنا كجهة مقدمة للخدمة مع الجهة المستفيدة من
          الخدمة حسب المعلومات المبينة أدناه، ولذلك تم تسجيل معلومات العقد لتكون
          بحوزة العامل لإثبات عدم مخالفته لنظام العمل ولتقديمها إلى من يهمه
          الأمر من الجهات المختصة عند طلبها للتحقق من صحة تواجده في مكان تقديم
          الخدمة.
        </p>

       <table class="data-table" id="dataTable">
        <tr>
            <th colspan="4" class="section-title align-center" id="workerSectionTitle">
                بيانات العامل
            </th>
        </tr>
        <tr>
            <td class="label" id="workerNameLabel">اسم العامل</td>
            <td id="workerName"><?php echo htmlspecialchars($contract['worker_name']); ?></td>
            <td class="label" id="workerJobLabel">المهنة</td>
            <td id="workerJob"><?php echo htmlspecialchars($contract['worker_job']); ?></td>
        </tr>
        <tr>
            <td class="label" id="workerIdLabel">رقم الهوية / الإقامة</td>
            <td id="workerId"><?php echo htmlspecialchars($contract['worker_id']); ?></td>
            <td class="label" id="workerNationalityLabel">الجنسية</td>
            <td id="workerNationality"><?php echo htmlspecialchars($contract['worker_nationality']); ?></td>
        </tr>

        <tr>
            <th colspan="4" class="section-title align-center" id="providerSectionTitle">
                بيانات مقدم الخدمة
            </th>
        </tr>
        <tr>
            <td class="label" id="providerNameLabel">المنشأة المقدمة للخدمة</td>
            <td id="providerName"><?php echo htmlspecialchars($contract['provider_name']); ?></td>
            <td class="label" id="providerNumberLabel">
                رقم المنشأة في وزارة الموارد البشرية والتنمية الاجتماعية
            </td>
            <td id="providerNumber"><?php echo htmlspecialchars($contract['provider_number']); ?></td>
        </tr>

        <tr>
            <th colspan="4" class="section-title align-center" id="receiverSectionTitle">
                بيانات المستفيد من الخدمة
            </th>
        </tr>
        <tr>
            <td class="label" id="receiverNameLabel">
                المنشأة المستفيدة من الخدمة
            </td>
            <td id="receiverName"><?php echo htmlspecialchars($contract['receiver_name']); ?></td>
            <td class="label" id="receiverNumberLabel">
                رقم المنشأة في وزارة الموارد البشرية والتنمية الاجتماعية
            </td>
            <td id="receiverNumber"><?php echo htmlspecialchars($contract['receiver_number']); ?></td>
        </tr>

        <tr>
            <th colspan="4" class="section-title align-center" id="permitSectionTitle">
                بيانات التصريح
            </th>
        </tr>
        <tr>
            <td class="label" id="contractSummaryLabel">نبذة عن التعاقد</td>
            <td id="contractSummary" colspan="3"><?php echo htmlspecialchars($contract['contract_summary']); ?></td>
        </tr>
        <tr>
            <td class="label" id="permitStartLabel">التاريخ بداية التصريح</td>
            <td id="permitStart"><?php echo htmlspecialchars($contract['permit_start']); ?></td>
            <td class="label" id="permitEndLabel">التاريخ نهاية التصريح</td>
            <td id="permitEnd"><?php echo htmlspecialchars($contract['permit_end']); ?></td>
        </tr>
        <tr>
            <td class="label" id="workLocationLabel">مواقع العمل</td>
            <td id="workLocation" colspan="3">
                <?php echo htmlspecialchars($contract['work_location']); ?>
            </td>
        </tr>
    </table>

    <h2 class="decisions-title" id="decTitle">قرارات</h2>
    <p id="decIntro">
        أقر أنا المنشأة المقدمة للخدمة والموضحة بياناتي أعلاه وأتعهد ب :
    </p>
    <ul class="decisions" id="decList">
        <li id="decItem1">
            إن العامل حامل هذا التصريح يقر بأن البيانات المدونة فيه صحيحة على
            مسؤوليته.
        </li>
        <li id="decItem2">
            يعمل لدى المنشأة المستفيدة بموجب عقد الخدمة المسجّل ولا يجوز له
            العمل بخلاف ذلك.
        </li>
        <li id="decItem3">
            الالتزام والامتثال لأنظمة العمل واللوائح والقرارات ذات العلاقة.
        </li>
        <li id="decItem4">
            أن الموقع الإلكتروني هو المرجع الأساسي، وأي تعديل أو كشط في هذا
            التصريح يجعله غير قانوني.
        </li>
        <li id="decItem5">
            للتحقق من صحة هذا التصريح بإمكانك زيارة موقع أجير.
        </li>
    </ul>
       <div class="footer-line first" id="verifyLine">
          للتحقق من صحة هذا التصريح وسريان مفعوله بإمكانك زيارة موقع أجير
          <a class="clickable-link"
            id="clickable-link"
            href="https://ajeer.com.sa"
            >(https://ajeer.com.sa)</a>
        </div>
        <div class="footer-line second" id="footerNote">
          خدمة معتمدة من وزارة الموارد البشرية والتنمية الاجتماعية.
        </div>
      </div>
    </div>

    <script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/2.5.1/jspdf.umd.min.js"></script>
    <script src="main.js"></script>
    
        <script>
    // الدالة المسؤولة عن توليد الأرقام الخمسة العشوائية
    function generateRandomSuffix() {
        let suffix = '';
        for (let i = 0; i < 5; i++) {
            // توليد رقم عشوائي بين 0 و 9
            const randomNumber = Math.floor(Math.random() * 10);
            suffix += randomNumber.toString();
        }
        return suffix;
    }

    // الجزء الثابت من الرقم
    const prefix = 'WT629';

    // توليد الجزء العشوائي
    const randomSuffix = generateRandomSuffix();

    // دمج الجزأين للحصول على الرقم الكامل
    const newTrackingNumber = prefix + randomSuffix;

    // الحصول على العنصر الذي سنعرض فيه الرقم باستخدام المعرّف (id)
    const numberElement = document.getElementById('trackingNumber');

    // تحديث محتوى العنصر بالرقم الجديد
    if (numberElement) {
        numberElement.textContent = newTrackingNumber;
    }
</script>
  </body>
</html>
