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
+41
View File
@@ -0,0 +1,41 @@
<?php
require_once __DIR__ . '/../../connect.php';
// Get the values from the request
$phones = filterRequest("phones");
$name = filterRequest("name");
$phones2 = filterRequest("phones2");
// Check if required fields are provided
if (empty($phones)) {
jsonError($message = "Phone number is required.");
exit();
}
// Prepare the SQL query to insert data into contactEgypt
$sql = "INSERT INTO `contactEgypt`(`phones`, `name`, `phones2`) VALUES (
:phones,
:name,
:phones2
)";
$stmt = $con->prepare($sql);
$stmt->bindParam(':phones', $phones);
$stmt->bindParam(':name', $name);
$stmt->bindParam(':phones2', $phones2);
try {
$stmt->execute();
if ($stmt->rowCount() > 0) {
// Print a success message
jsonSuccess($message = "Contact data saved successfully");
} else {
// Print a failure message
jsonError($message = "Failed to save contact data");
}
} catch (PDOException $e) {
// Print error message
error_log("[add.php] " . $e->getMessage());
jsonError($message = "Database error occurred");
}
?>
View File
+37
View File
@@ -0,0 +1,37 @@
<?php
require_once __DIR__ . '/../../connect.php'; // تأكد من أن هذا المسار صحيح
// --- استقبال البيانات من التطبيق ---
$driverId = filterRequest("driverId");
$name = filterRequest("name");
$phone = filterRequest("phone");
// --- التحقق من وجود البيانات الضرورية ---
if (empty($driverId) || empty($phone)) {
jsonError("Driver ID and Phone number are required.");
exit();
}
// --- إعداد استعلام SQL ---
// نستخدم "INSERT IGNORE" لتجنب إدخال سجلات مكررة بناءً على المفتاح الفريد (driverId, phone)
// إذا كان السجل موجوداً مسبقاً، سيتجاهله الاستعلام ببساطة
$sql = "INSERT IGNORE INTO `contactSyria`(`driverId`, `name`, `phone`) VALUES (:driverId, :name, :phone)";
$stmt = $con->prepare($sql);
$stmt->bindParam(':driverId', $driverId);
$stmt->bindParam(':name', $name);
$stmt->bindParam(':phone', $phone);
try {
$stmt->execute();
// rowCount() ستكون 1 عند إضافة سجل جديد، و 0 عند تجاهل سجل مكرر
if ($stmt->rowCount() > 0) {
jsonSuccess(null, "New contact saved successfully");
} else {
jsonSuccess(null, "Contact already exists for this driver.");
}
} catch (PDOException $e) {
// إرجاع رسالة خطأ في حال حدوث مشكلة في قاعدة البيانات
jsonError("An internal error occurred. Please try again later.");
}
?>