Files
MVE/views/configuracion/dashboard_configuracion.php
2025-06-27 07:30:16 -06:00

285 lines
14 KiB
PHP
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php include __DIR__ . '/../partials/sidebar_configuracion.php'; ?>
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>Dashboard | Configuración</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
<style>
body { font-family: 'Segoe UI', sans-serif; background-color: #f4f6f9; }
.sidebar { width: 220px; height: 100vh; background-color: #343a40; position: fixed; top: 0; left: 0; padding-top: 56px; z-index: 1040; }
.sidebar .nav-link { font-weight: bold; color: white; transition: all 0.3s ease; }
.sidebar .nav-link:hover,
.sidebar .nav-link.active { background-color: #495057; color: #fff; }
.content { margin-top: 56px; padding: 40px 20px; position: relative; z-index: 1; background-color: #f4f6f9; transition: margin-left 0.3s ease; }
.navbar { position: fixed; top: 0; width: 100%; z-index: 1050; }
/* A partir de dispositivos medianos (>=768px), deja espacio lateral */
@media (min-width: 768px) { .content { margin-left: 250px; /* Ancho del sidebar */ } }
/* En móviles, sin margen lateral */
@media (max-width: 767.98px) {
.content { margin-left: 0; }
.sidebar .nav-link { font-weight: normal; color: #343a40; background-color: transparent; }
.sidebar .nav-link:hover,
.sidebar .nav-link.active { background-color: #e9ecef; color: #212529; }
}
.card { border-radius: 12px; }
label {font-weight: bold;}
.section-header { background-color: #e9ecef; padding: 10px 15px; margin: 0 0 20px 0; border-radius: 8px 8px 0 0; font-weight: bold; color: #495057; }
</style>
</head>
<body>
<div class="content">
<h4 class="mb-4"> Información General</h4>
<?php if (isset($datos['tipo_usuario']) && $datos['tipo_usuario'] === 'importador'): ?>
<div class="card shadow-sm p-4 mb-4 bg-white">
<div class="section-header">👤 Información Personal</div>
<form>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Clave:</label>
<div class="col-md-3">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['clave'] ?? '') ?>" disabled>
</div>
<div class="col-md-3"></div>
<label class="col-md-2 col-form-label">Tipo de identificador:</label>
<div class="col-md-2">
<select name="tipo_identificador" class="form-control" disabled>
<option value="">-- Selecciona una opción --</option>
<option value="1" <?= ($datos['tipo_identificador'] ?? '') == '1' ? 'selected' : '' ?>>1 - RFC</option>
<option value="2" <?= ($datos['tipo_identificador'] ?? '') == '2' ? 'selected' : '' ?>>2 - CURP</option>
<option value="3" <?= ($datos['tipo_identificador'] ?? '') == '3' ? 'selected' : '' ?>>3 - SIN TAX ID</option>
</select>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Nombre:</label>
<div class="col-md-10">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['nombre'] ?? '') ?>" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">RFC:</label>
<div class="col-md-3">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['rfc'] ?? '') ?>" disabled>
</div>
<div class="col-md-1"></div>
<label class="col-md-1 col-form-label">CURP:</label>
<div class="col-md-5">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['curp'] ?? '') ?>" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Calle:</label>
<div class="col-md-10">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['calle'] ?? '') ?>" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Núm. Exterior:</label>
<div class="col-md-2">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['num_exterior'] ?? '') ?>" disabled>
</div>
<div class="col-md-4"></div>
<label class="col-md-2 col-form-label">Núm. Interior:</label>
<div class="col-md-2">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['num_interior'] ?? '') ?>" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Ciudad / Localidad:</label>
<div class="col-md-3">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['ciudad'] ?? '') ?>" disabled>
</div>
<div class="col-md-1"></div>
<label class="col-md-1 col-form-label">Colonia:</label>
<div class="col-md-5">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['colonia'] ?? '') ?>" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">País:</label>
<div class="col-md-3">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['pais'] ?? '') ?>" disabled>
</div>
<div class="col-md-3"></div>
<label class="col-md-2 col-form-label">Código Postal:</label>
<div class="col-md-2">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['codigo_postal'] ?? '') ?>" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Municipio:</label>
<div class="col-md-4">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['municipio'] ?? '') ?>" disabled>
</div>
<div class="col-md-1"></div>
<label class="col-md-1 col-form-label">Estado:</label>
<div class="col-md-4">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['estado'] ?? '') ?>" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Teléfono:</label>
<div class="col-md-5">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['telefono'] ?? '') ?>" disabled>
</div>
<div class="col-md-1"></div>
<label class="col-md-1 col-form-label">Fax:</label>
<div class="col-md-3">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['fax'] ?? '') ?>" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Correo:</label>
<div class="col-md-10">
<input type="email" class="form-control" value="<?= htmlspecialchars($datos['correo'] ?? '') ?>" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Observaciones:</label>
<div class="col-md-10">
<textarea class="form-control" rows="3" disabled><?= htmlspecialchars($datos['observaciones'] ?? '') ?></textarea>
</div>
</div>
<div style="display: flex; justify-content: right;">
<a href="/IMPORTADORES/configuracion/editar" class="btn btn-success mb-3">✏️ Editar Información</a>
</div>
</div>
</form>
</div>
<?php elseif (isset($datos['tipo_usuario']) && in_array($datos['tipo_usuario'], ['admin_agencia', 'agente_aduanal'])): ?>
<div class="card shadow-sm p-4 mb-4 bg-white">
<div class="section-header">🏢 Información de Agencia Aduanal</div>
<form>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Nombre Agencia:</label>
<div class="col-md-10">
<input type="text" class="form-control" value="<?= htmlspecialchars(decrypt($datos['nombre_agencia'] ?? '')) ?>" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">RFC:</label>
<div class="col-md-3">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['rfc_agencia'] ?? '') ?>" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Teléfono:</label>
<div class="col-md-3">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['telefono_agencia'] ?? '') ?>" disabled>
</div>
<div class="col-md-3"></div>
<label class="col-md-1 col-form-label">Email:</label>
<div class="col-md-3">
<input type="email" class="form-control" value="<?= htmlspecialchars(decrypt($datos['email_agencia'] ?? '')) ?>" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Dirección:</label>
<div class="col-md-10">
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['direccion_agencia'] ?? '') ?>" disabled>
</div>
</div><hr>
<!-- Información personal del usuario (para referencia) -->
<div class="section-header mt-4">👤 Mi Información Personal</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Nombre:</label>
<div class="col-md-4">
<input type="text" class="form-control" value="<?= htmlspecialchars(decrypt($datos['nombre'] ?? '')) ?>" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Correo:</label>
<div class="col-md-10">
<input type="email" class="form-control" value="<?= htmlspecialchars(decrypt($datos['correo'] ?? '')) ?>" disabled>
</div>
</div>
<?php if (isset($datos['fecha_asignacion']) && $datos['fecha_asignacion']): ?>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Fecha de Asignación:</label>
<div class="col-md-3">
<?php
// Handle both DateTime objects and string dates
if ($datos['fecha_asignacion'] instanceof DateTime) {
$fecha_formateada = $datos['fecha_asignacion']->setTimezone(new DateTimeZone('America/Mexico_City'))->format('d/m/Y H:i');
} else {
$fecha_formateada = date('d/m/Y H:i', strtotime($datos['fecha_asignacion']));
}
?>
<input type="text" class="form-control" value="<?= htmlspecialchars($fecha_formateada) ?>" disabled>
</div>
</div>
<?php endif; ?>
</form>
</div>
<?php elseif (isset($datos['tipo_usuario']) && $datos['tipo_usuario'] === 'super_admin'): ?>
<div class="card shadow-sm p-4 mb-4 bg-white">
<div class="section-header">🔧 Información de Super Administrador</div>
<form>
<div class="row mb-3">
<label class="col-md-1 col-form-label">Nombre:</label>
<div class="col-md-4">
<!-- Para super_admin, NO desencriptar - usar directamente -->
<input type="text" class="form-control" value="<?= htmlspecialchars($datos['nombre'] ?? '') ?>" disabled>
</div>
<label class="col-md-2 col-form-label">Tipo de Usuario:</label>
<div class="col-md-4">
<input type="text" class="form-control" value="Super Administrador" disabled>
</div>
</div>
<div class="row mb-3">
<label class="col-md-2 col-form-label">Correo:</label>
<div class="col-md-10">
<!-- Para super_admin, NO desencriptar - usar directamente -->
<input type="email" class="form-control" value="<?= htmlspecialchars($datos['correo'] ?? '') ?>" disabled>
</div>
</div>
<!-- Información adicional específica de super_admin -->
<div class="row mb-3">
<label class="col-md-2 col-form-label">Privilegios:</label>
<div class="col-md-10">
<textarea class="form-control" rows="2" disabled>Acceso completo al sistema - Gestión de usuarios, agencias, importadores y configuración general</textarea>
</div>
</div>
</form>
</div>
<?php else: ?>
<div class="alert alert-warning">
<h5>⚠️ Información no disponible</h5>
<p>No se pudo cargar la información para el tipo de usuario:
<strong><?= htmlspecialchars($datos['tipo_usuario'] ?? 'Desconocido') ?></strong>
</p>
<p class="mb-0">
<small class="text-muted">Tipos de usuario válidos: admin_agencia, agente_aduanal, super_admin, importador</small><br>
<small class="text-muted">
Datos disponibles:
<?= is_array($datos) ? implode(', ', array_keys($datos)) : 'Sin datos' ?>
</small>
</p>
</div>
<?php endif; ?>
</div>
</body>
</html>