#!/bin/bash

# ========================================
# الحل السريع لمشكلة SQLite على CloudLinux/cPanel
# نفذ هذا السكريبت على السيرفر: bash fix_server_now.sh
# ========================================

echo "⚡ إصلاح مشكلة SQLite على السيرفر..."
echo ""

# التحقق من نوع السيرفر
if [ -d "/opt/alt/php83" ]; then
    echo "✅ تم اكتشاف: CloudLinux/cPanel"
    SERVER_TYPE="cloudlinux"
elif [ -f "/etc/debian_version" ]; then
    echo "✅ تم اكتشاف: Ubuntu/Debian"
    SERVER_TYPE="debian"
elif [ -f "/etc/redhat-release" ]; then
    echo "✅ تم اكتشاف: CentOS/RHEL"
    SERVER_TYPE="redhat"
else
    echo "⚠️  نوع السيرفر غير معروف"
    SERVER_TYPE="unknown"
fi
echo ""

# الحل السريع: حذف الباكج المسبب للمشكلة
echo "🔧 الحل 1: حذف Knowledge Base (الأسرع)"
echo "══════════════════════════════════════════════"
echo ""
read -p "هل تريد حذف guava/filament-knowledge-base؟ (y/n): " remove_kb

if [ "$remove_kb" = "y" ] || [ "$remove_kb" = "Y" ]; then
    echo ""
    echo "🗑️  جاري حذف الباكج..."
    
    # حذف الباكج
    composer remove guava/filament-knowledge-base --ignore-platform-req=ext-pdo_sqlite --no-interaction
    
    if [ $? -eq 0 ]; then
        echo "✅ تم حذف Knowledge Base بنجاح"
        echo ""
        echo "🧹 مسح الـ Cache..."
        php artisan optimize:clear
        php artisan config:clear
        php artisan view:clear
        php artisan route:clear
        
        echo ""
        echo "✅ ✅ ✅ تم الإصلاح بنجاح!"
        echo ""
        echo "الموقع يعمل الآن بشكل طبيعي 🎉"
        echo ""
        exit 0
    else
        echo "❌ فشل حذف الباكج"
        echo "جرب يدوياً:"
        echo "  composer remove guava/filament-knowledge-base --ignore-platform-req=ext-pdo_sqlite"
        exit 1
    fi
fi

echo ""
echo "🔧 الحل 2: تفعيل SQLite"
echo "══════════════════════════════════════════════"
echo ""

if [ "$SERVER_TYPE" = "cloudlinux" ]; then
    echo "⚠️  على CloudLinux/cPanel:"
    echo ""
    echo "📋 الطريقة الموصى بها (من cPanel):"
    echo "   1. افتح cPanel"
    echo "   2. اذهب إلى: Select PHP Version"
    echo "   3. ضع علامة ✓ على:"
    echo "      - pdo_sqlite"
    echo "      - sqlite3"
    echo "   4. اضغط Save"
    echo ""
    echo "🔧 أو من SSH (يحتاج root):"
    echo "   sudo yum install ea-php83-php-pdo"
    echo "   sudo yum install ea-php83-php-sqlite3"
    echo "   sudo systemctl restart httpd"
    echo ""
    
elif [ "$SERVER_TYPE" = "debian" ]; then
    echo "🔧 تثبيت SQLite على Ubuntu/Debian..."
    read -p "هل تريد تثبيت SQLite الآن؟ (يحتاج sudo) (y/n): " install_sqlite
    
    if [ "$install_sqlite" = "y" ]; then
        sudo apt-get update
        sudo apt-get install -y php8.3-sqlite3 php8.3-pdo-sqlite
        sudo systemctl restart apache2
        echo "✅ تم التثبيت"
    fi
    
elif [ "$SERVER_TYPE" = "redhat" ]; then
    echo "🔧 تثبيت SQLite على CentOS/RHEL..."
    read -p "هل تريد تثبيت SQLite الآن؟ (يحتاج sudo) (y/n): " install_sqlite
    
    if [ "$install_sqlite" = "y" ]; then
        sudo yum install -y php83-pdo_sqlite
        sudo systemctl restart httpd
        echo "✅ تم التثبيت"
    fi
fi

echo ""
echo "══════════════════════════════════════════════"
echo "✅ انتهى السكريبت"
echo ""
echo "💡 التوصية:"
echo "   استخدم الحل 1 (حذف Knowledge Base) إذا لم تحتاجه"
echo "   أو فعّل SQLite من cPanel"
echo ""
