<?php
require_once __DIR__.'/../../config/auth.php';
$error='';
if(($_SERVER['REQUEST_METHOD']??'GET')==='POST'){
 $id=(int)($_POST['id']??0);$nombre=limpiar($_POST['nombre']??'');$descripcion=limpiar($_POST['descripcion']??'');$activo=isset($_POST['activo'])?1:0;
 if($nombre==='')$error='El nombre del tipo de usuario es obligatorio.';
 else{try{if($id){$s=$conn->prepare('UPDATE tipos_usuario SET nombre=?,descripcion=?,activo=? WHERE id=?');$s->bind_param('ssii',$nombre,$descripcion,$activo,$id);}else{$s=$conn->prepare('INSERT INTO tipos_usuario(nombre,descripcion,activo) VALUES(?,?,?)');$s->bind_param('ssi',$nombre,$descripcion,$activo);}$s->execute();registrar_auditoria($conn,$id?'UPDATE':'INSERT','tipos_usuario',$id?:$s->insert_id,'Tipo de usuario');header('Location: tipos.php?guardado=1');exit;}catch(Throwable $e){$error='No fue posible guardar. Verifique que el nombre no esté repetido.';}}
}
$editar=null;if((int)($_GET['id']??0)){$id=(int)$_GET['id'];$editar=$conn->query("SELECT * FROM tipos_usuario WHERE id=$id")->fetch_assoc();}
$lista=$conn->query('SELECT t.*,(SELECT COUNT(*) FROM usuarios u WHERE u.tipo_usuario_id=t.id) usuarios FROM tipos_usuario t ORDER BY t.nombre');
include __DIR__.'/../../includes/header.php';include __DIR__.'/../../includes/sidebar.php';?>
<main class="main"><?php include __DIR__.'/../../includes/topbar.php';?><div class="content"><div class="d-flex justify-content-between"><div><h3 class="page-title">Tipos de Usuario</h3><p class="text-muted">Clasifique usuarios para definir qué equipos de trabajo puede supervisar cada persona.</p></div><a class="btn btn-outline-secondary align-self-start" href="/HM/modules/administracion/index.php">Volver</a></div><?php if(isset($_GET['guardado'])):?><div class="alert alert-success">Tipo de usuario guardado.</div><?php endif;if($error):?><div class="alert alert-danger"><?=e($error)?></div><?php endif;?><div class="row g-3"><div class="col-lg-4"><div class="card card-hm"><div class="card-body"><h5><?=$editar?'Editar':'Nuevo'?> tipo</h5><form method="post"><input type="hidden" name="id" value="<?=(int)($editar['id']??0)?>"><label class="form-label">Nombre *</label><input class="form-control mb-3" name="nombre" required value="<?=e($editar['nombre']??'')?>"><label class="form-label">Descripción</label><textarea class="form-control mb-3" name="descripcion" rows="3"><?=e($editar['descripcion']??'')?></textarea><div class="form-check form-switch mb-3"><input class="form-check-input" type="checkbox" id="activo" name="activo" <?=!$editar||$editar['activo']?'checked':''?>><label class="form-check-label" for="activo">Activo</label></div><button class="btn btn-hm">Guardar</button></form></div></div></div><div class="col-lg-8"><div class="card card-hm"><div class="card-body table-responsive"><table class="table table-hover"><thead><tr><th>Tipo</th><th>Descripción</th><th>Usuarios</th><th>Estado</th><th></th></tr></thead><tbody><?php while($t=$lista->fetch_assoc()):?><tr><td><?=e($t['nombre'])?></td><td><?=e($t['descripcion']?:'—')?></td><td><?=(int)$t['usuarios']?></td><td><?=$t['activo']?'Activo':'Inactivo'?></td><td><a class="btn btn-sm btn-outline-primary" href="?id=<?=$t['id']?>"><i class="fa fa-pen"></i></a></td></tr><?php endwhile;?></tbody></table></div></div></div></div></div></main><?php include __DIR__.'/../../includes/footer.php';?>
