#!/bin/bash
# Script to apply AI Model Preference migration
# For XAMPP MySQL database

echo "=== AI Model Preference & Package Enhancement Migration ==="
echo ""
echo "This migration adds:"
echo "  1. User preferred_ai_model column"
echo "  2. Package grants_models column"
echo "  3. user_model_access table for tracking"
echo ""
echo "To apply this migration, follow these steps:"
echo ""
echo "OPTION 1: Using phpMyAdmin (Recommended for XAMPP)"
echo "----------------------------------------"
echo "1. Open XAMPP Control Panel"
echo "2. Start MySQL if not running"
echo "3. Click 'Admin' next to MySQL (opens phpMyAdmin)"
echo "4. Select 'ashlya_academy' database"
echo "5. Click 'SQL' tab"
echo "6. Copy the contents of:"
echo "   migrations/008_ai_model_preference_and_packages.sql"
echo "7. Paste into SQL query box"
echo "8. Click 'Go'"
echo ""
echo "OPTION 2: Using XAMPP Shell"
echo "----------------------------------------"
echo "1. Open XAMPP Shell"
echo "2. Navigate to XAMPP's mysql bin folder: cd C:\\xampp\\mysql\\bin"
echo "3. Run: mysql -u root -p ashlya_academy < \"$(pwd)/migrations/008_ai_model_preference_and_packages.sql\""
echo "4. Enter password (usually empty for XAMPP)"
echo ""
echo "OPTION 3: Using this Python script"
echo "----------------------------------------"
echo "Run: python3 run_migration.py"
echo ""

# Try to run migration if mysql command is available
if command -v mysql &> /dev/null; then
    echo "MySQL found! Running migration..."
    read -p "Enter MySQL root password (press Enter if no password): " MYSQL_PASS
    
    if [ -z "$MYSQL_PASS" ]; then
        mysql -u root ashlya_academy < migrations/008_ai_model_preference_and_packages.sql
    else
        mysql -u root -p"$MYSQL_PASS" ashlya_academy < migrations/008_ai_model_preference_and_packages.sql
    fi
    
    if [ $? -eq 0 ]; then
        echo "✓ Migration applied successfully!"
    else
        echo "✗ Migration failed. Please check errors above."
        exit 1
    fi
else
    echo "MySQL command not found. Please use phpMyAdmin (Option 1) or run manually."
fi
