"""
Script to delete all migration files (except __init__.py) and prepare for fresh migrations
"""
import os
import glob

# Find all migration directories (excluding venv)
migration_dirs = []
for root, dirs, files in os.walk('.'):
    # Skip venv directory
    if 'venv' in root or '__pycache__' in root:
        continue
    if 'migrations' in dirs:
        migration_path = os.path.join(root, 'migrations')
        migration_dirs.append(migration_path)

print("Found migration directories:")
for md in migration_dirs:
    print(f"  - {md}")

# Delete all migration files except __init__.py
deleted_count = 0
for migration_dir in migration_dirs:
    if os.path.exists(migration_dir):
        # Find all Python files starting with 0 (migration files)
        migration_files = glob.glob(os.path.join(migration_dir, '0*.py'))
        for file_path in migration_files:
            try:
                os.remove(file_path)
                deleted_count += 1
                print(f"Deleted: {file_path}")
            except Exception as e:
                print(f"Error deleting {file_path}: {e}")

print(f"\nTotal migration files deleted: {deleted_count}")
print("\nNext steps:")
print("1. Run: python manage.py makemigrations")
print("2. Run: python manage.py migrate --fake-initial")
print("   (This will mark all initial migrations as applied without running them)")

