import os
import sys

# Add project root directory to python path
sys.path.insert(0, os.path.dirname(__file__))

# Point to production settings
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "config.settings.prod")

import django
django.setup()

# Auto-run migrations on application startup
try:
    from django.core.management import call_command
    call_command("migrate", interactive=False)
except Exception:
    pass

# Auto-load initial data and admin user if database is freshly created
try:
    from academics.models import Faculty
    from django.core.management import call_command
    if Faculty.objects.count() == 0:
        backup_file = os.path.join(os.path.dirname(__file__), "data_backup.json")
        if os.path.exists(backup_file):
            call_command("loaddata", backup_file)
except Exception:
    pass

# Load WSGI application for Phusion Passenger
from config.wsgi import application
