34849-vm/edit_column.php
2026-02-05 05:37:35 +00:00

83 lines
2.7 KiB
PHP

<?php
$pageTitle = "Editar Columna del Kanban";
require_once 'layout_header.php';
require_once 'db/config.php';
// Asegurarse de que el usuario sea administrador
if ($_SESSION['user_role'] !== 'Administrador' && $_SESSION['user_role'] !== 'admin') {
echo "<div class='alert alert-danger'>Acceso denegado.</div>";
require_once 'layout_footer.php';
exit();
}
$message = '';
$column = null;
if (!isset($_GET['id']) || !is_numeric($_GET['id'])) {
header('Location: configuracion.php');
exit;
}
$column_id = $_GET['id'];
try {
$pdo = db();
// Procesar el formulario cuando se envía
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$nombre = trim($_POST['nombre'] ?? '');
if (!empty($nombre)) {
$stmt = $pdo->prepare('UPDATE kanban_columns SET nombre = ? WHERE id = ?');
if ($stmt->execute([$nombre, $column_id])) {
$_SESSION['success_message'] = "Columna actualizada a '" . htmlspecialchars($nombre) . "'.";
header('Location: configuracion.php');
exit;
} else {
$message = "<div class='alert alert-danger'>Error al actualizar la columna.</div>";
}
} else {
$message = "<div class='alert alert-warning'>El nombre de la columna no puede estar vacío.</div>";
}
}
// Obtener los datos de la columna para mostrar en el formulario
$stmt = $pdo->prepare('SELECT * FROM kanban_columns WHERE id = ?');
$stmt->execute([$column_id]);
$column = $stmt->fetch(PDO::FETCH_ASSOC);
if (!$column) {
echo "<div class='alert alert-danger'>La columna no existe.</div>";
require_once 'layout_footer.php';
exit;
}
} catch (PDOException $e) {
$message = "<div class='alert alert-danger'>Error de base de datos: " . $e->getMessage() . "</div>";
}
?>
<div class="container mt-5">
<div class="card">
<div class="card-header">
<h2>Editar Columna del Kanban</h2>
</div>
<div class="card-body">
<?php echo $message; ?>
<?php if ($column): ?>
<form method="POST" action="edit_column.php?id=<?php echo $column_id; ?>">
<div class="mb-3">
<label for="nombre" class="form-label">Nombre de la Columna</label>
<input type="text" class="form-control" id="nombre" name="nombre" value="<?php echo htmlspecialchars($column['nombre']); ?>" required>
</div>
<button type="submit" class="btn btn-primary">Actualizar Columna</button>
<a href="configuracion.php" class="btn btn-secondary">Cancelar</a>
</form>
<?php endif; ?>
</div>
</div>
</div>
<?php require_once 'layout_footer.php'; ?>