<?php$__template->section('title');?><?=isset($isReport)?'تقرير الكروت':'كروت النشاط الرياضي'?><?php$__template->endSection();?>
<?php$__template->section('page_actions');?>
<ahref="/sa/registration"class="btn btn-outline"><idata-lucide="user-plus"style="width:15px;height:15px;vertical-align:middle;margin-left:4px;"></i> تسجيل جديد</a>
<inputtype="text"id="scanInput"class="form-input"placeholder="امسح QR أو أدخل رقم الكارت..."dir="ltr"style="font-size:18px;text-align:center;padding:14px;"autofocus>
<divclass="info-row"><spanclass="label">هاتف ولي الأمر:</span><spanclass="value"style="direction:ltr;text-align:right;"><?=e($registration['guardian_phone']??'—')?></span></div>
<ahref="/sa/registration"class="btn btn-outline"><idata-lucide="arrow-right"style="width:15px;height:15px;vertical-align:middle;margin-left:4px;"></i> مكتب التسجيل</a>
<divid="photoPreview"style="width:200px;height:200px;border-radius:12px;background:#F3F4F6;margin:0 auto 15px;overflow:hidden;display:flex;align-items:center;justify-content:center;">
<labelclass="btn btn-outline"style="cursor:pointer;"><idata-lucide="upload"style="width:14px;height:14px;vertical-align:middle;margin-left:4px;"></i> رفع ملف<inputtype="file"id="photoFileInput"accept="image/*"style="display:none;"></label>
<buttontype="button"id="btnPhotoNext"class="btn btn-primary"<?=(int)$registration['photo_captured']?'':'disabled'?>><idata-lucide="arrow-left"style="width:14px;height:14px;vertical-align:middle;margin-left:4px;"></i> التالي — اختيار النشاط</button>
<h3style="margin:0;font-size:16px;font-weight:600;"><idata-lucide="trophy"style="width:18px;height:18px;vertical-align:middle;margin-left:6px;"></i> اختيار النشاط والمجموعة</h3>
</div>
<divstyle="padding:20px;">
<divstyle="margin-bottom:15px;">
<inputtype="text"id="groupSearch"class="form-input"placeholder="ابحث عن نشاط أو مجموعة..."style="max-width:400px;">
<buttontype="button"id="btnActivityNext"class="btn btn-primary"<?=$selectedGroup?'':'disabled'?>><idata-lucide="banknote"style="width:14px;height:14px;vertical-align:middle;margin-left:4px;"></i> إرسال للخزينة</button>
<buttontype="button"id="btnGenerateCard"class="btn btn-primary"<?=(int)$registration['card_generated']?'disabled':''?>><idata-lucide="credit-card"style="width:14px;height:14px;vertical-align:middle;margin-left:4px;"></i> إنشاء الكارت</button>
<ahref="/sa/registration"class="btn btn-outline"><idata-lucide="plus"style="width:14px;height:14px;vertical-align:middle;margin-left:4px;"></i> تسجيل جديد</a>
<h3style="margin:0;font-size:16px;font-weight:600;"><idata-lucide="user-plus"style="width:18px;height:18px;vertical-align:middle;margin-left:6px;"></i> تسجيل جديد</h3>
<buttontype="submit"class="btn btn-primary"id="btnStartReg"><idata-lucide="play"style="width:14px;height:14px;vertical-align:middle;margin-left:4px;"></i> بدء التسجيل</button>
['title'=>'إدخال الرقم القومي','body'=>'أدخل الرقم القومي (14 رقم) واضغط <span class="field">استعلام</span>. النظام يستخرج تلقائياً: تاريخ الميلاد، العمر، النوع، المحافظة.<span class="info">إذا كان اللاعب مسجلاً مسبقاً — يتم استرجاع بياناته مباشرة.</span>'],
['title'=>'التقاط الصورة','body'=>'التقط صورة عبر <span class="field">كاميرا الويب</span> أو ارفع ملف صورة. الصورة إلزامية لإتمام التسجيل.<span class="warn">الصورة تظهر على الاستمارة والكارت — تأكد من جودتها.</span>'],
['title'=>'اختيار النشاط والمجموعة','body'=>'اختر المجموعة المناسبة (حسب السن والنشاط). يظهر تلقائياً:<ul><li>رسوم التسجيل (100 ج عضو / 50 ج غير عضو)</li><li>رسوم الكارت (25 ج)</li><li>رسوم الاستمارة (10 ج)</li><li>اشتراك المجموعة الشهري</li></ul>'],
['title'=>'إرسال للخزينة','body'=>'اضغط <span class="field">إرسال للخزينة</span>. يتم إنشاء طلب دفع شامل يظهر في طابور التحصيل.<span class="success">بعد السداد يتم تفعيل التسجيل وإصدار الكارت تلقائياً.</span>'],
['title'=>'الطباعة وإصدار الكارت','body'=>'بعد السداد يمكنك: <span class="field">طباعة الاستمارة</span> (A4) و<span class="field">طباعة الكارت</span> (PVC). الكارت يحتوي على QR للدخول من البوابة.'],
],
'sa-registration.card-management'=>[
['title'=>'فتح إدارة الكروت','body'=>'من القائمة: <span class="field">النشاط الرياضي</span> > <span class="field">الكروت</span>.'],
['title'=>'البحث والفلترة','body'=>'ابحث بالاسم أو رقم الكارت. فلتر بالحالة: نشط، مؤقت، منتهي، موقوف، ملغى.'],
['title'=>'عرض تفاصيل كارت','body'=>'اضغط <span class="field">عرض</span> لمشاهدة: بيانات اللاعب، حالة الكارت، تاريخ الصلاحية، وسجل الدخول.'],
['title'=>'إيقاف أو إلغاء','body'=>'<span class="field">إيقاف</span>: تعليق مؤقت (يمكن إعادة التفعيل). <span class="field">إلغاء</span>: إلغاء نهائي لا رجعة فيه.<span class="warn">الكارت الموقوف أو الملغي يُرفض تلقائياً عند البوابة.</span>'],
['title'=>'إعادة الطباعة','body'=>'اضغط <span class="field">طباعة</span> لإصدار نسخة جديدة من الكارت. النظام يسجل عدد مرات الطباعة.'],
['title'=>'مسح الكارت','body'=>'امسح QR Code بالقارئ أو أدخل رقم الكارت يدوياً. النظام يتحقق فوراً من:<ul><li>صلاحية الكارت (تاريخ الانتهاء)</li><li>حالة الكارت (نشط/موقوف/ملغى)</li><li>حالة اللاعب</li></ul>'],
['title'=>'نتيجة المسح','body'=>'<span style="color:#059669;font-weight:bold;">✓ مسموح</span>: يظهر اسم اللاعب ورقم الكارت بخلفية خضراء.<br><span style="color:#DC2626;font-weight:bold;">✗ ممنوع</span>: يظهر سبب الرفض بخلفية حمراء.'],
['title'=>'السجل','body'=>'اضغط <span class="field">السجل</span> لعرض جميع عمليات المسح مع الفلاتر (التاريخ، النتيجة، البحث).<span class="info">يتم تسجيل كل عملية مسح سواء مسموح أو مرفوض.</span>'],
['title'=>'اختيار الفترة','body'=>'حدد <span class="field">تاريخ البداية</span> و<span class="field">تاريخ النهاية</span>. يظهر ملخص:<ul><li>إجمالي التسجيلات (مكتمل/ملغي/قيد الانتظار)</li><li>إجمالي الإيرادات</li><li>الأعضاء مقابل غير الأعضاء</li><li>الكروت المصدرة</li></ul>'],
['title'=>'التفصيل اليومي','body'=>'جدول يومي يعرض عدد التسجيلات والإيرادات لكل يوم في الفترة المحددة.'],
['title'=>'تقارير الكروت','body'=>'من <span class="field">الكروت</span> > <span class="field">التقرير</span>: إحصائيات الكروت (نشط/مؤقت/منتهي/موقوف) مع توزيع حسب النوع.'],
],
'sa-registration.temp-card-workflow'=>[
['title'=>'الكارت المؤقت','body'=>'عند إصدار كارت بنوع <span class="field">مؤقت</span>: الصلاحية 7 أيام فقط من تاريخ الإصدار.'],
['title'=>'الدخول خلال المدة','body'=>'اللاعب يستخدم الكارت المؤقت للدخول من البوابة بشكل طبيعي خلال فترة الصلاحية.'],
['title'=>'انتهاء الصلاحية','body'=>'بعد 7 أيام يتحول الكارت تلقائياً إلى حالة <span style="color:#6B7280;font-weight:bold;">منتهي</span> ويُرفض عند البوابة.<span class="warn">يجب إصدار كارت دائم قبل انتهاء المؤقت.</span>'],
],
];
}
...
...
@@ -1287,6 +1327,7 @@ final class TutorialRegistry