import asyncio, sys, os, json
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))

from pg_adapter import Database
db = Database()

async def seed():
    with open("idg_mongo_data.json", "r", encoding="utf-8") as f:
        data = json.load(f)
        
    settings = data.get("settings", [])
    site_settings = next((s for s in settings if s.get("id") in ["site_settings", "global"]), {})
    categories = site_settings.get("categories", [])
    
    if categories:
        print(f"Found {len(categories)} categories in backup. Seeding...")
        for c in categories:
            existing = await db.categories.find_one({"id": c["id"]})
            if not existing:
                await db.categories.insert_one(c)
        print("Categories seeded.")
    else:
        print("No categories found in backup settings.")
        
asyncio.run(seed())
