<?php
session_start();
require_once 'db/config.php';

// Proteger contra acceso no autorizado
if (!isset($_SESSION['user_rol']) || $_SESSION['user_rol'] !== 'Administrador General') {
    $_SESSION['error_message'] = 'No tienes permiso para realizar esta acción.';
    header('Location: ciudades.php');
    exit;
}

if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['orden'])) {
    $orden_array = $_POST['orden'];
    $pdo = db();

    try {
        $pdo->beginTransaction();

        $stmt = $pdo->prepare('UPDATE ciudades SET orden = :orden WHERE id = :id');

        foreach ($orden_array as $id => $orden) {
            $stmt->execute([
                'orden' => (int)$orden,
                'id' => (int)$id
            ]);
        }

        $pdo->commit();
        $_SESSION['success_message'] = 'El orden de las ciudades ha sido actualizado correctamente.';

    } catch (Exception $e) {
        $pdo->rollBack();
        $_SESSION['error_message'] = 'Error al actualizar el orden: ' . $e->getMessage();
    }

} else {
    $_SESSION['error_message'] = 'Petición no válida.';
}

header('Location: ciudades.php');
exit;
?>
