<?php
/**
 * Runner — Migración 20260709: turnero_dispositivos token
 * Ejecutar una sola vez desde el navegador.
 */

require_once __DIR__ . '/config/config.php';

$sqlFile = __DIR__ . '/migrations/20260709_dispositivos_token.sql';

if (!file_exists($sqlFile)) {
    die("❌ Archivo no encontrado: $sqlFile\n");
}

try {
    $pdo = Database::getInstance()->getConnection();
    $sql = file_get_contents($sqlFile);

    $statements = array_filter(array_map('trim', explode(';', $sql)));

    echo "<pre>🚀 Ejecutando migración: 20260709_dispositivos_token\n\n";

    foreach ($statements as $stmt) {
        $clean = preg_replace('/--[^\n]*/', '', $stmt);
        $clean = trim($clean);
        if (empty($clean)) continue;

        $pdo->exec($clean);
        $preview = substr(preg_replace('/\s+/', ' ', $clean), 0, 100);
        echo "✓ Ejecutado: {$preview}\n";
    }

    echo "\n✅ Migración completada. Columna <strong>token</strong> agregada a turnero_dispositivos.\n</pre>";

} catch (Throwable $e) {
    echo "<pre>❌ Error: " . htmlspecialchars($e->getMessage()) . "\n</pre>";
}
