netgescon-master/resources/views/superadmin/users/index.blade.php
2025-06-29 23:39:33 +02:00

109 lines
6.0 KiB
PHP

@extends('superadmin.layouts.app')
@section('content')
<div class="bg-white overflow-hidden shadow-sm sm:rounded-lg">
<div class="p-6 bg-white border-b border-gray-200">
<div class="flex justify-between items-center mb-6">
<h2 class="text-2xl font-bold text-gray-800">Gestione Utenti</h2>
<a href="{{ route('superadmin.users.create') }}"
class="bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded">
Nuovo Utente
</a>
</div>
<!-- Tabella Utenti -->
<div class="overflow-x-auto">
<table class="min-w-full bg-white border border-gray-200">
<thead class="bg-gray-50">
<tr>
<th class="px-6 py-3 border-b border-gray-200 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
ID
</th>
<th class="px-6 py-3 border-b border-gray-200 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
Nome
</th>
<th class="px-6 py-3 border-b border-gray-200 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
Email
</th>
<th class="px-6 py-3 border-b border-gray-200 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
Ruoli
</th>
<th class="px-6 py-3 border-b border-gray-200 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
Data Creazione
</th>
<th class="px-6 py-3 border-b border-gray-200 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
Azioni
</th>
</tr>
</thead>
<tbody class="bg-white divide-y divide-gray-200">
@forelse($users as $user)
<tr class="hover:bg-gray-50">
<td class="px-6 py-4 whitespace-nowrap text-sm text-gray-900">
{{ $user->id }}
</td>
<td class="px-6 py-4 whitespace-nowrap text-sm font-medium text-gray-900">
{{ $user->name }}
</td>
<td class="px-6 py-4 whitespace-nowrap text-sm text-gray-900">
{{ $user->email }}
</td>
<td class="px-6 py-4 whitespace-nowrap text-sm text-gray-900">
@foreach($user->roles as $role)
<span class="inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-blue-100 text-blue-800 mr-1">
{{ $role->name }}
</span>
@endforeach
</td>
<td class="px-6 py-4 whitespace-nowrap text-sm text-gray-900">
{{ $user->created_at->format('d/m/Y H:i') }}
</td>
<td class="px-6 py-4 whitespace-nowrap text-sm font-medium space-x-2">
<a href="{{ route('superadmin.users.edit', $user) }}"
class="text-indigo-600 hover:text-indigo-900">Modifica</a>
<!-- Form per cambiare ruolo -->
<form method="POST" action="{{ route('superadmin.users.updateRole', $user) }}" class="inline">
@csrf
@method('PATCH')
<select name="role" onchange="this.form.submit()" class="text-sm border-gray-300 rounded">
<option value="">Cambia Ruolo</option>
@foreach(\Spatie\Permission\Models\Role::all() as $role)
<option value="{{ $role->name }}" {{ $user->hasRole($role->name) ? 'selected' : '' }}>
{{ $role->name }}
</option>
@endforeach
</select>
</form>
@if($user->id !== auth()->id())
<a href="{{ route('superadmin.users.impersonate', $user) }}"
class="text-green-600 hover:text-green-900">Impersona</a>
<form method="POST" action="{{ route('superadmin.users.destroy', $user) }}" class="inline"
onsubmit="return confirm('Sei sicuro di voler eliminare questo utente?')">
@csrf
@method('DELETE')
<button type="submit" class="text-red-600 hover:text-red-900">Elimina</button>
</form>
@endif
</td>
</tr>
@empty
<tr>
<td colspan="6" class="px-6 py-4 text-center text-gray-500">
Nessun utente trovato
</td>
</tr>
@endforelse
</tbody>
</table>
</div>
<!-- Paginazione -->
<div class="mt-6">
{{ $users->links() }}
</div>
</div>
</div>
@endsection