#!/usr/bin/env python3
"""
Remove duplicate routes that have been moved to blueprints
"""

import re

# Read the current app.py
with open('app.py', 'r') as f:
    content = f.read()

# List of function names that have been moved to blueprints
moved_functions = [
    # Auth routes
    'login',
    'logout', 
    'verify_2fa',
    'profile',
    'change_password',
    'setup_2fa',
    'enable_2fa',
    'disable_2fa',
    'heartbeat',
    # Admin routes
    'dashboard',
    'audit_log',
    'backups',
    'create_backup_route',
    'restore_backup_route',
    'download_backup',
    'delete_backup',
    'blocked_ips',
    'unblock_ip',
    'clear_attempts'
]

# Create a pattern to match route decorators and their functions
for func_name in moved_functions:
    # Pattern to match from @app.route to the end of the function
    pattern = rf'@app\.route\([^)]+\)\s*(?:@login_required\s*)?def {func_name}\([^)]*\):.*?(?=\n@app\.route|\n@[a-zA-Z]|\nif __name__|$)'
    
    # Replace with a comment
    replacement = f'# Function {func_name} moved to blueprint'
    
    content = re.sub(pattern, replacement, content, flags=re.DOTALL)

# Write the modified content
with open('app_no_duplicates.py', 'w') as f:
    f.write(content)

print("Created app_no_duplicates.py with duplicate routes removed")
print("Please review the file before using it")