You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
136 lines
6.8 KiB
136 lines
6.8 KiB
@extends('layouts.dashboard')
|
|
|
|
@section('content')
|
|
<div class="container mx-auto px-4 py-6">
|
|
|
|
|
|
<!-- Mensajes de éxito y error -->
|
|
@if(session('success'))
|
|
<div id="success-message" class="bg-green-100 border border-green-400 text-green-700 px-4 py-3 rounded relative mb-4" role="alert">
|
|
<span class="block sm:inline">{{ session('success') }}</span>
|
|
</div>
|
|
@endif
|
|
|
|
@if(session('error'))
|
|
<div class="bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded relative mb-4" role="alert">
|
|
<span class="block sm:inline">{{ session('error') }}</span>
|
|
</div>
|
|
@endif
|
|
|
|
<div class="bg-white rounded-lg shadow-lg">
|
|
<div class="p-4 border-b border-gray-200 flex justify-between items-center">
|
|
<h2 class="text-2xl font-bold">Gestión de Marcas</h2>
|
|
<a href="{{ route('marca.create') }}" class="px-4 py-2 bg-blue-500 text-white rounded-lg hover:bg-blue-600 flex items-center gap-2">
|
|
<i class="fas fa-plus"></i>
|
|
Agregar
|
|
</a>
|
|
</div>
|
|
<!-- Barra de búsqueda -->
|
|
<div class="p-4 border-b border-gray-200 bg-gray-50">
|
|
<form action="{{ route('marca.index') }}" method="GET" class="flex gap-2">
|
|
<div class="relative w-full sm:w-64">
|
|
<input type="text"
|
|
name="busqueda"
|
|
placeholder="Buscar marca..."
|
|
value="{{ request('busqueda') }}"
|
|
class="w-full pl-10 pr-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-blue-500">
|
|
<div class="absolute left-3 top-2.5 text-gray-400">
|
|
<i class="fas fa-search"></i>
|
|
</div>
|
|
</div>
|
|
<button type="submit" class="px-4 py-2 bg-blue-500 text-white rounded-lg hover:bg-blue-600">
|
|
Buscar
|
|
</button>
|
|
@if(request('busqueda'))
|
|
<a href="{{ route('marca.index') }}" class="px-4 py-2 bg-gray-500 text-white rounded-lg hover:bg-gray-600">
|
|
Limpiar
|
|
</a>
|
|
@endif
|
|
</form>
|
|
</div>
|
|
|
|
<div class="overflow-x-auto">
|
|
<table class="min-w-full divide-y divide-gray-200">
|
|
<thead class="bg-gray-50">
|
|
<tr>
|
|
<th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">ID</th>
|
|
<th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Marca</th>
|
|
|
|
<th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Acciones</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody class="bg-white divide-y divide-gray-200">
|
|
@foreach($marcas as $marca)
|
|
<tr class="hover:bg-gray-50">
|
|
<td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">{{ $marca->id }}</td>
|
|
<td class="px-6 py-4 whitespace-nowrap text-sm text-gray-900">
|
|
<i class="fas fa-car text-blue-500 mr-2"></i>
|
|
{{ $marca->marca }}
|
|
</td>
|
|
{{-- todo esto funciona para mostrar el estatus de tiempo real dela actividad
|
|
<td class="px-6 py-4 whitespace-nowrap text-sm">
|
|
@if($marca->eliminado == 0)
|
|
<span class="flex items-center">
|
|
<span class="h-2 w-2 bg-green-500 rounded-full mr-2"></span> Activo
|
|
</span>
|
|
@else
|
|
<span class="flex items-center">
|
|
<span class="h-2 w-2 bg-red-500 rounded-full mr-2"></span> Inactivo
|
|
</span>
|
|
@endif
|
|
</td>--}}
|
|
<td class="flex space-x-2 px-6 py-4 whitespace-nowrap text-sm">
|
|
@if($marca->eliminado == 1)
|
|
<form action="{{ route('marca.update', $marca->id) }}" method="POST" class="d-inline">
|
|
@csrf
|
|
@method('PUT')
|
|
<input type="hidden" name="recuperar" value="1">
|
|
<a href="#" onclick="event.preventDefault(); this.closest('form').submit();" class="text-success">
|
|
<i class="fas fa-undo" style="color: green;"></i>
|
|
</a>
|
|
</form>
|
|
@else
|
|
<a href="{{ route('marca.edit', $marca->id) }}" class="text-warning">
|
|
<i class="fas fa-edit" style="color: orange;"></i>
|
|
</a>
|
|
<form action="{{ route('marca.destroy', $marca->id) }}" method="POST" class="d-inline">
|
|
@csrf
|
|
@method('DELETE')
|
|
<a href="#" onclick="event.preventDefault(); this.closest('form').submit();" class="text-danger">
|
|
<i class="fas fa-trash" style="color: red;"></i>
|
|
</a>
|
|
</form>
|
|
@endif
|
|
</td>
|
|
</tr>
|
|
@endforeach
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<script>
|
|
// Desaparecer el mensaje después de 3 segundos
|
|
setTimeout(function() {
|
|
var message = document.getElementById('success-message');
|
|
if (message) {
|
|
message.style.transition = 'opacity 0.5s ease';
|
|
message.style.opacity = '0';
|
|
setTimeout(function() {
|
|
message.remove();
|
|
}, 500); // Tiempo para remover el elemento después de la transición
|
|
}
|
|
}, 3000); // Tiempo en milisegundos antes de comenzar a desaparecer
|
|
setTimeout(function() {
|
|
var noResultsMessage = document.getElementById('no-results-message');
|
|
if (noResultsMessage) {
|
|
noResultsMessage.style.transition = 'opacity 0.5s ease';
|
|
noResultsMessage.style.opacity = '0';
|
|
setTimeout(function() {
|
|
noResultsMessage.remove();
|
|
}, 500); // Tiempo para remover el elemento después de la transición
|
|
}
|
|
}, 3000); // Tiempo en milisegundos antes de comenzar a desaparecer
|
|
</script>
|
|
@endsection
|