ggramajo/resources/views/persona/index.blade.php
2026-06-14 16:44:43 -03:00

134 lines
4.3 KiB
PHP

@extends('layouts.admin')
@section('contenido')
<!-- row => fila del sistema de grillas Bootstrap
justify-content-center => centra horizontalmente los contenidos
align-items-center => centra verticalmente
no centran el texto, centran las columnas dentro de la fila
-->
<div class="row justify-content-center align-items-center">
<!-- col-12 => ocupa todo el ancho en pantallas pequeñas
col-md-11 => ocupa 11/12 del ancho en pantallas medianas o mayores -->
<div class="col-12 col-md-11">
<h3>Listado de Personas</h3>
</div>
</div>
<div class="row justify-content-center align-items-center">
<div class="col-md-2">
<!-- btn => estilo de botón Bootstrap
btn-success => verde (acción positiva)
btn-block => ocupa todo el ancho de la columna
btn-lg => tamaño grande -->
<a href="{{ route('persona.create') }}"
class="btn btn-success btn-block btn-lg"
title="Nueva Persona">
Nuevo
</a>
</div>
</div>
<br>
<div class="row justify-content-center align-items-center">
<div class="col-12 col-md-11">
<!-- Includes de Blade para mensajes de éxito y errores -->
@include('compartido.mensajes')
@include('compartido.errores')
<!-- table-responsive => hace que la tabla sea "scrollable" en pantallas pequeñas -->
<div class="table-responsive">
<!-- table => tabla con estilos básicos
table-striped => filas alternadas con fondo gris
table-bordered => agrega bordes a todas las celdas
table-hover => resalta la fila al pasar el mouse -->
<table class="table table-striped table-bordered table-hover" id="example">
<thead>
<tr>
<th>Id</th>
<th>Nombre</th>
<th>Apellido</th>
<th>DNI</th>
<th>Acciones</th>
</tr>
</thead>
<tbody>
@foreach($personas as $per)
<tr>
<td>{{ $per->id_persona }}</td>
<td>{{ $per->nombre }}</td>
<td>{{ $per->apellido }}</td>
<td>{{ $per->dni }}</td>
<td align="center">
@if($per->deleted_at == null)
<form method="POST" action="{{ route('persona.destroy', $per->id_persona) }}" style="display:inline;">
@csrf
@method('DELETE')
<!-- btn-info => azul claro (información) -->
<a class="btn btn-info"
href="{{ route('persona.show', $per->id_persona) }}"
title="Ver más">
<i class="fa fa-eye"></i>
</a>
<!-- btn-warning => amarillo (advertencia / editar) -->
<a class="btn btn-warning"
href="{{ route('persona.edit', $per->id_persona) }}"
title="Editar">
<i class="fa fa-pencil"></i>
</a>
<!-- btn-danger => rojo (acción destructiva como eliminar) -->
<button class="btn btn-danger"
onclick="return confirm('¿Está seguro de eliminar la persona?');"
title="Eliminar">
<i class="fa fa-remove"></i>
</button>
</form>
@else
<form method="POST" action="{{ route('persona.restaurar', $per->id_persona) }}" style="display:inline;">
@csrf
@method('PUT')
<!-- btn-danger => rojo (acción destructiva como eliminar) -->
<button class="btn btn-success"
onclick="return confirm('¿Está seguro de Restaurar la persona?');"
title="Restaurar">
<i class="fa fa-undo"></i>
</button>
</form>
@endif
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
@endsection
@push('styles')
@endpush
@push('scripts')
<script>
// DataTables (plugin JS para mejorar tablas: búsqueda, paginación, exportación)
$('#example').DataTable({
dom: 'Bfrtip',
buttons: ['excel'],
pageLength: 5,
language: {
search : "Buscar:"
}
});
</script>
@endpush