<?php

require __DIR__ . '/../vendor/autoload.php';
require __DIR__ . '/../config.php';

use App\Database;
use App\Models\Category;

$db = Database::getInstance();

$categories = Category::getAll($db);

foreach ($categories as $cat) {
    $path = Category::getFullPath($db, $cat['id']);
    if (strpos($path, '[Circular]') !== false) {
        echo "Circular reference found for category {$cat['id']}: {$cat['name']}\n";
        // Reset parent_id to null
        $stmt = $db->prepare('UPDATE categories SET parent_id = NULL WHERE id = :id');
        $stmt->execute([':id' => $cat['id']]);
        echo "Fixed by setting parent_id to NULL\n";
    }
}

echo "Done checking and fixing circular references.\n";
