================================================================================
MOLAK v2.0 - قسم الإدارة الداخلية (Admin Panel)
Internal Administration Section
================================================================================

📊 الإحصائيات:
- عدد الكلاسات: 14
- عدد الصفحات: 75
- المستخدمون: فريق الإدارة الداخلية (You + Team)

================================================================================

admin/
│
├── classes/                                    ═══ 14 كلاس ═══
│   │
│   ├── Admin.php
│   │   # كلاس الإدارة الرئيسي
│   │   الدوال:
│   │   - __construct()                         # بناء الكلاس
│   │   - getAdminById($id)                     # جلب بيانات المدير
│   │   - getAdminProfile($adminId)             # جلب الملف الشخصي
│   │   - updateProfile($adminId, $data)        # تحديث الملف الشخصي
│   │   - getDashboardData()                    # بيانات لوحة التحكم العامة
│   │   - getPlatformStats()                    # إحصائيات المنصة الكاملة
│   │   - getAllUsers($filters)                 # جميع المستخدمين
│   │   - getTotalRevenue($period)              # إجمالي الإيرادات
│   │   - getGrowthRate($period)                # معدل النمو
│   │   - getActiveSubscriptions()              # الاشتراكات النشطة
│   │
│   ├── AdminAuth.php
│   │   # مصادقة الإدارة
│   │   الدوال:
│   │   - login($email, $password)              # تسجيل الدخول
│   │   - verify2FA($code)                      # التحقق الثنائي
│   │   - logout()                              # تسجيل الخروج
│   │   - getCurrentAdmin()                     # جلب المدير الحالي
│   │   - changePassword($old, $new)            # تغيير كلمة المرور
│   │   - setup2FA()                            # إعداد المصادقة الثنائية
│   │   - checkAdminSession()                   # فحص الجلسة
│   │
│   ├── AdminPermissions.php
│   │   # إدارة صلاحيات الإدارة
│   │   الدوال:
│   │   - getAdminPermissions($adminId)         # صلاحيات المدير
│   │   - checkPermission($adminId, $perm)      # فحص صلاحية محددة
│   │   - hasRole($adminId, $role)              # فحص دور
│   │   - getAvailableRoles()                   # الأدوار المتاحة
│   │   - assignRole($adminId, $roleId)         # تعيين دور
│   │   - removeRole($adminId, $roleId)         # إزالة دور
│   │   - isSuperAdmin($adminId)                # هل هو Super Admin
│   │
│   ├── OwnerManagement.php
│   │   # إدارة الملاك
│   │   الدوال:
│   │   - getAllOwners($filters)                # جميع الملاك
│   │   - getOwnerById($id)                     # جلب مالك
│   │   - getPendingOwners()                    # ملاك معلقين
│   │   - approveOwner($ownerId, $adminId)      # الموافقة على مالك
│   │   - rejectOwner($ownerId, $reason)        # رفض مالك
│   │   - freezeOwnerAccount($ownerId, $reason) # تجميد حساب مالك
│   │   - unfreezeOwnerAccount($ownerId)        # إلغاء التجميد
│   │   - getOwnerBuildings($ownerId)           # مباني المالك
│   │   - getOwnerSubscription($ownerId)        # اشتراك المالك
│   │   - getOwnerUsage($ownerId)               # استخدام المالك
│   │   - getOwnerActivityLog($ownerId)         # سجل نشاط المالك
│   │   - updateOwnerStatus($ownerId, $status)  # تحديث حالة المالك
│   │
│   ├── TenantManagement.php
│   │   # إدارة المستأجرين
│   │   الدوال:
│   │   - getAllTenants($filters)               # جميع المستأجرين
│   │   - getTenantById($id)                    # جلب مستأجر
│   │   - getTenantContracts($tenantId)         # عقود المستأجر
│   │   - getTenantPayments($tenantId)          # مدفوعات المستأجر
│   │   - getKYCQueue()                         # طابور التحقق من الهوية
│   │   - verifyKYC($tenantId, $status, $notes) # التحقق من الهوية
│   │   - suspendTenant($tenantId, $reason)     # إيقاف مستأجر
│   │   - getDisputedContracts()                # عقود متنازع عليها
│   │   - getTenantDisputes($tenantId)          # نزاعات المستأجر
│   │
│   ├── ProviderManagement.php
│   │   # إدارة مزودي الخدمة
│   │   الدوال:
│   │   - getAllProviders($filters)             # جميع المزودين
│   │   - getProviderById($id)                  # جلب مزود
│   │   - getPendingProviders()                 # مزودين معلقين
│   │   - verifyProvider($providerId, $status, $notes) # التحقق من مزود
│   │   - approveProvider($providerId)          # الموافقة على مزود
│   │   - rejectProvider($providerId, $reason)  # رفض مزود
│   │   - suspendProvider($providerId, $reason) # إيقاف مزود
│   │   - getProviderRatings($providerId)       # تقييمات المزود
│   │   - getProviderWallet($providerId)        # محفظة المزود
│   │   - getProviderPayouts($providerId)       # سحوبات المزود
│   │   - approvePayoutRequest($payoutId)       # الموافقة على سحب
│   │   - rejectPayoutRequest($payoutId, $reason) # رفض سحب
│   │
│   ├── SubscriptionManagement.php
│   │   # إدارة الاشتراكات
│   │   الدوال:
│   │   - getAllSubscriptions($filters)         # جميع الاشتراكات
│   │   - getSubscriptionById($id)              # جلب اشتراك
│   │   - getExpiringSubscriptions($days)       # اشتراكات قريبة من الانتهاء
│   │   - getOverdueSubscriptions()             # اشتراكات متأخرة
│   │   - suspendSubscription($subscriptionId)  # إيقاف اشتراك
│   │   - resumeSubscription($subscriptionId)   # استئناف اشتراك
│   │   - changePlan($subscriptionId, $planId)  # تغيير الباقة
│   │   - getSubscriptionRevenue($period)       # إيرادات الاشتراكات
│   │   - getChurnRate($period)                 # معدل الإلغاء
│   │   - getMRR()                              # الإيرادات الشهرية المتكررة
│   │   - getARR()                              # الإيرادات السنوية المتكررة
│   │
│   ├── PaymentManagement.php
│   │   # إدارة المدفوعات
│   │   الدوال:
│   │   - getAllPayments($filters)              # جميع المدفوعات
│   │   - getPaymentById($id)                   # جلب دفعة
│   │   - getFailedPayments()                   # دفعات فاشلة
│   │   - refundPayment($paymentId, $amount, $reason) # استرجاع دفعة
│   │   - getPaymentStats($period)              # إحصائيات المدفوعات
│   │   - getTotalVolume($period)               # حجم المعاملات
│   │   - getPaymentGatewayLogs($paymentId)     # سجلات بوابة الدفع
│   │   - reconcilePayments($date)              # تسوية الحسابات
│   │   - generatePaymentReport($period)        # تقرير المدفوعات
│   │
│   ├── MarketplaceModeration.php
│   │   # مراجعة السوق
│   │   الدوال:
│   │   - getAllListings($filters)              # جميع الإعلانات
│   │   - getListingById($id)                   # جلب إعلان
│   │   - getPendingListings()                  # إعلانات معلقة
│   │   - approveListing($listingId)            # الموافقة على إعلان
│   │   - rejectListing($listingId, $reason)    # رفض إعلان
│   │   - getReportedListings()                 # إعلانات مبلغ عنها
│   │   - suspendListing($listingId, $reason)   # إيقاف إعلان
│   │   - getListingPerformance($listingId)     # أداء الإعلان
│   │   - getMarketplaceStats()                 # إحصائيات السوق
│   │
│   ├── ComplianceManager.php
│   │   # إدارة الامتثال
│   │   الدوال:
│   │   - getKYCQueue()                         # طابور التحقق
│   │   - verifyDocument($documentId, $status, $notes) # التحقق من وثيقة
│   │   - getFlaggedAccounts()                  # حسابات مشبوهة
│   │   - freezeAccount($userId, $reason)       # تجميد حساب
│   │   - unfreezeAccount($userId)              # إلغاء التجميد
│   │   - getComplianceReports()                # تقارير الامتثال
│   │   - auditTrail($entityType, $entityId)    # مسار التدقيق
│   │   - generateComplianceReport($period)     # تقرير امتثال
│   │
│   ├── SupportTicket.php
│   │   # تذاكر الدعم
│   │   الدوال:
│   │   - getAllTickets($filters)               # جميع التذاكر
│   │   - getTicketById($id)                    # جلب تذكرة
│   │   - getOpenTickets()                      # تذاكر مفتوحة
│   │   - getMyTickets($adminId)                # تذاكري
│   │   - assignTicket($ticketId, $adminId)     # تعيين تذكرة
│   │   - updateTicketStatus($ticketId, $status)# تحديث حالة تذكرة
│   │   - replyToTicket($ticketId, $message)    # الرد على تذكرة
│   │   - escalateTicket($ticketId)             # تصعيد تذكرة
│   │   - closeTicket($ticketId)                # إغلاق تذكرة
│   │   - getTicketStats()                      # إحصائيات التذاكر
│   │   - getAverageResponseTime()              # متوسط وقت الاستجابة
│   │
│   ├── PlatformAnalytics.php
│   │   # تحليلات المنصة
│   │   الدوال:
│   │   - getUserGrowth($period)                # نمو المستخدمين
│   │   - getRevenueGrowth($period)             # نمو الإيرادات
│   │   - getOccupancyRate()                    # معدل الإشغال الكلي
│   │   - getPaymentCollectionRate()            # معدل التحصيل
│   │   - getActiveUsersCount()                 # عدد المستخدمين النشطين
│   │   - getChurnRate($period)                 # معدل التسرب
│   │   - getLTV()                              # القيمة الدائمة للعميل
│   │   - getCAC()                              # تكلفة اكتساب العميل
│   │   - getTopPerformingOwners($limit)        # أفضل الملاك
│   │   - getTopProviders($limit)               # أفضل المزودين
│   │   - generateExecutiveReport()             # تقرير تنفيذي
│   │
│   └── SystemSettings.php
│       # إعدادات النظام
│       الدوال:
│       - getAllSettings()                      # جميع الإعدادات
│       - getSettingByKey($key)                 # جلب إعداد
│       - updateSetting($key, $value)           # تحديث إعداد
│       - getPaymentGatewaySettings()           # إعدادات بوابات الدفع
│       - updatePaymentGateway($gateway, $data) # تحديث بوابة دفع
│       - getEmailTemplates()                   # قوالب البريد
│       - updateEmailTemplate($template, $data) # تحديث قالب بريد
│       - getSMSSettings()                      # إعدادات SMS
│       - updateSMSSettings($data)              # تحديث إعدادات SMS
│       - getTranslations($langCode)            # الترجمات
│       - updateTranslation($key, $langCode, $value) # تحديث ترجمة

================================================================================
الصفحات (75 صفحة)
================================================================================

See admin_pages_details.txt for complete page breakdown

================================================================================
ملاحظات التطوير الهامة:
================================================================================

1. الأمان والصلاحيات:
   ✓ نظام صلاحيات RBAC متقدم
   ✓ Super Admin (user_id=1) له كامل الصلاحيات
   ✓ أدوار متخصصة حسب المسؤولية
   ✓ تسجيل كل إجراء في audit_log
   ✓ مصادقة ثنائية إلزامية
   ✓ انتهاء الجلسات (30 دقيقة)

2. سير العمل (Workflows):
   
   ▸ مالك جديد:
   - التسجيل → معلق
   - المراجعة (approve.php)
   - التحقق من الوثائق
   - الموافقة → active
   - الرفض → rejected (مع سبب)
   
   ▸ مزود خدمة جديد:
   - التسجيل → pending
   - المراجعة (verification.php)
   - فحص الترخيص، التأمين، الشهادات
   - الموافقة → verified
   - الرفض → rejected (مع سبب)
   
   ▸ KYC للمستأجرين:
   - رفع الوثائق
   - طابور المراجعة (kyc-queue.php)
   - فحص الهوية
   - الموافقة → verified
   - الرفض → not_verified (إعادة الرفع)
   
   ▸ طلب سحب:
   - المزود يطلب سحب
   - المراجعة (payouts.php)
   - فحص الرصيد والحساب
   - الموافقة → processing → paid
   - الرفض (مع سبب)

3. لوحة التحكم الرئيسية (dashboard.php):
   
   بطاقات KPIs:
   - إجمالي المستخدمين
   - إجمالي الإيرادات (شهري/سنوي)
   - عدد الملاك النشطين
   - عدد مزودي الخدمة
   - معدل الإشغال الكلي
   - معدل التحصيل
   
   رسوم بيانية:
   - نمو المستخدمين (Line Chart)
   - الإيرادات الشهرية (Bar Chart)
   - توزيع الاشتراكات (Pie Chart)
   - المدفوعات اليومية (Area Chart)
   
   جداول سريعة:
   - طلبات معلقة (ملاك، مزودين)
   - KYC معلق
   - تذاكر دعم مفتوحة
   - نشاطات حديثة

4. التقارير (reports/):
   
   ▸ platform-metrics.php:
   - عرض شامل لجميع المقاييس
   - اختيار الفترة
   - مقارنات
   - تصدير PDF/Excel
   
   ▸ revenue.php:
   - إيرادات الاشتراكات
   - إيرادات العمولات
   - MRR (Monthly Recurring Revenue)
   - ARR (Annual Recurring Revenue)
   - التوقعات
   
   ▸ occupancy.php:
   - معدل الإشغال الكلي
   - بحسب المنطقة
   - بحسب نوع الوحدة
   - الاتجاهات
   
   ▸ growth.php:
   - نمو المستخدمين
   - نمو الإيرادات
   - معدلات (MoM, YoY)
   - التوقعات

5. إدارة المدفوعات:
   
   ▸ transactions.php:
   - جميع المعاملات
   - فلاتر متقدمة
   - البحث
   - الحالة
   
   ▸ refunds.php:
   - طلبات الاسترجاع
   - الموافقة/الرفض
   - المعالجة
   
   ▸ reconciliation.php:
   - مطابقة المعاملات
   - كشف الفروقات
   - التسوية
   - تقرير

6. الامتثال (compliance/):
   
   ▸ kyc-queue.php:
   - طابور التحقق
   - مستأجرين، ملاك، مزودين
   - المراجعة
   - الموافقة/الرفض
   
   ▸ audit-log.php:
   - سجل شامل لكل إجراء
   - من + ماذا + متى + أين (IP)
   - فلاتر متقدمة
   - تصدير
   
   ▸ frozen-accounts.php:
   - الحسابات المجمدة
   - السبب
   - إلغاء التجميد

7. الدعم (support/):
   
   ▸ tickets.php:
   - نظام تذاكر كامل
   - الأولوية
   - الحالة
   - التعيين
   
   ▸ view-ticket.php:
   - المحادثة
   - الردود
   - المرفقات
   - الإجراءات
   
   ▸ chat.php:
   - دردشة مباشرة
   - إشعارات فورية

8. الإعدادات (settings/):
   
   ▸ team.php:
   - إدارة فريق الإدارة
   - إضافة/تعديل/حذف
   - الأدوار والصلاحيات
   
   ▸ system-config.php:
   - إعدادات عامة
   - اسم المنصة
   - الشعار
   - العملة
   - المنطقة الزمنية
   
   ▸ payment-gateways.php:
   - Stripe
   - API Keys
   - Test/Live Mode
   - Webhooks
   
   ▸ email-templates.php:
   - قوالب البريد
   - المتغيرات
   - المعاينة
   - الإرسال التجريبي
   
   ▸ translations.php:
   - إدارة الترجمات
   - عربي/إنجليزي
   - إضافة مفاتيح جديدة

================================================================================
المقاييس الرئيسية (KPIs):
================================================================================

1. النمو:
   - User Growth Rate (معدل نمو المستخدمين)
   - Owner Growth Rate (معدل نمو الملاك)
   - Provider Growth Rate (معدل نمو المزودين)
   - Unit Growth Rate (معدل نمو الوحدات)

2. الإيرادات:
   - MRR (Monthly Recurring Revenue)
   - ARR (Annual Recurring Revenue)
   - Revenue Growth Rate
   - ARPU (Average Revenue Per User)

3. الأداء التشغيلي:
   - Occupancy Rate (معدل الإشغال)
   - Collection Rate (معدل التحصيل)
   - Maintenance Response Time
   - Ticket Resolution Time

4. الاحتفاظ:
   - Churn Rate (معدل التسرب)
   - Retention Rate (معدل الاحتفاظ)
   - LTV (Lifetime Value)
   - CAC (Customer Acquisition Cost)

5. الجودة:
   - Average Provider Rating
   - Service Completion Rate
   - Dispute Rate
   - Payment Failure Rate

================================================================================
الأولويات عند التطوير:
================================================================================

المرحلة 1 (الأساسيات):
✓ Auth + Permissions
✓ Dashboard
✓ Owner Management
✓ Basic Reports

المرحلة 2 (الموافقات):
✓ KYC Verification
✓ Provider Approval
✓ Marketplace Moderation
✓ Payment Management

المرحلة 3 (التحسينات):
✓ Advanced Analytics
✓ Support System
✓ Compliance Tools
✓ System Settings

المرحلة 4 (التحسين المستمر):
✓ Automation
✓ AI/ML Insights
✓ Advanced Reporting
✓ Performance Optimization

================================================================================
