<?php
require_once 'config.php';

try {
    $pdo = getDBConnection();
    
    // Verificar si la columna ya existe
    $stmt = $pdo->query("SHOW COLUMNS FROM users LIKE 'created_by'");
    if ($stmt->rowCount() > 0) {
        echo "El campo 'created_by' ya existe en la tabla users.\n";
        exit;
    }
    
    // Agregar el campo created_by
    $pdo->exec("ALTER TABLE users ADD COLUMN created_by INT(11) DEFAULT NULL AFTER ship_id");
    
    // Intentar agregar la foreign key (puede fallar si ya existe o si hay datos incompatibles)
    try {
        $pdo->exec("ALTER TABLE users ADD FOREIGN KEY (created_by) REFERENCES users(id) ON DELETE SET NULL");
        echo "Campo 'created_by' y foreign key agregados exitosamente.\n";
    } catch (Exception $e) {
        // Si falla la foreign key, al menos el campo está agregado
        echo "Campo 'created_by' agregado exitosamente. (Foreign key no se pudo agregar: " . $e->getMessage() . ")\n";
    }
    
} catch (Exception $e) {
    echo "Error: " . $e->getMessage() . "\n";
}
?>

