chore: استيراد أولي من سيرو (ecfe7568) — بلا أي تعديل

نسخة كاملة من مستودع سيرو عند ecfe7568 لتكون أساس تطبيق «انطلق».
نُسخ المتعقَّب في git فقط (12,509 ملفاً / 302 م.ب) بـ git archive، لا
`cp -r` — فاستُثنيت تلقائياً مخلفات البناء (build · node_modules ·
.dart_tool · .gradle · Pods ≈ 10.7 غ.ب) وكل ما يستثنيه .gitignore.

هذا الكوميت **بلا أي تعديل عمداً** حتى يكون كل ما يليه فرقاً مقروءاً
مقابل سيرو الأصلي. سيرو نفسه لم يُمسّ.

⚠️ لا يبني بعد: `.env` و`lib/env/env.g.dart` غير متعقَّبين في سيرو (وهذا
صحيح — أسرار لكل مستأجر). كل تطبيق فلاتر هنا يحتاج .env خاصاً بانطلق ثم
توليد env.g.dart عبر build_runner. لا تُنسخ أسرار سيرو.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Hamza-Ayed
2026-07-27 05:10:29 +03:00
co-authored by Claude Opus 5
commit 92dc6b3641
3654 changed files with 896478 additions and 0 deletions
@@ -0,0 +1,38 @@
<?php
require_once __DIR__ . '/../connect.php';
// استقبال التاريخ المُراد عرض الملاحظات له
// إذا لم يتم إرسال تاريخ، نستخدم تاريخ اليوم الحالي
$filter_date = isset($_POST['date']) ? $_POST['date'] : date('Y-m-d');
$sql = "SELECT * FROM `notesForDriverService`
WHERE DATE(`createdAt`) = :filter_date
ORDER BY `createdAt` DESC";
try {
$stmt = $con->prepare($sql);
$stmt->execute([':filter_date' => $filter_date]);
$notes_data = $stmt->fetchAll(PDO::FETCH_ASSOC);
if ($notes_data) {
// التصحيح: استخدام حلقة التكرار وتمرير الصف كمرجع (&) لتعديل البيانات الأصلية
foreach ($notes_data as &$row) {
// التأكد من وجود عمود الهاتف قبل فك التشفير
if (isset($row['phone'])) {
// استخدام دالة فك التشفير (تأكد أن الدالة decrypt موجودة في connect.php)
// أو استخدم $encryptionHelper->decryptData($row['phone']) إذا كنت تستخدم كلاس
$row['phone'] = $encryptionHelper->decryptData($row['phone']);
}
}
unset($row); // كسر الارتباط بالمتغير الأخير لضمان سلامة الكود
jsonSuccess($notes_data);
} else {
jsonError("No notes found for this date");
}
} catch (PDOException $e) {
error_log("[getNotesForEmployee.php] " . $e->getMessage());
jsonError("An internal error occurred. Please try again later.");
}
?>