109 lines
5.3 KiB
PHP
109 lines
5.3 KiB
PHP
@extends('admin.layout')
|
|
|
|
@section('title', 'Gestione Utenti')
|
|
@section('page_title', 'Gestione Utenti')
|
|
|
|
@section('breadcrumbs')
|
|
<li class="breadcrumb-item active">Admin</li>
|
|
<li class="breadcrumb-item active">Utenti</li>
|
|
@endsection
|
|
|
|
@section('content')
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<h3 class="card-title">Utenti Registrati</h3>
|
|
<a href="/admin/utenti/create" class="btn btn-success btn-sm float-right">
|
|
<i class="fas fa-plus"></i> Nuovo Utente
|
|
</a>
|
|
</div>
|
|
<div class="card-body">
|
|
<form method="GET" class="mb-3">
|
|
<div class="row">
|
|
<div class="col-md-4">
|
|
<input type="text" name="search" class="form-control" placeholder="Cerca nome o email..." value="{{ request('search') }}">
|
|
</div>
|
|
<div class="col-md-3">
|
|
<select name="status" class="form-control">
|
|
<option value="">Tutti gli stati</option>
|
|
<option value="active" {{ request('status') == 'active' ? 'selected' : '' }}>Attivo</option>
|
|
<option value="suspended" {{ request('status') == 'suspended' ? 'selected' : '' }}>Sospeso</option>
|
|
<option value="pending" {{ request('status') == 'pending' ? 'selected' : '' }}>In attesa</option>
|
|
</select>
|
|
</div>
|
|
<div class="col-md-2">
|
|
<button type="submit" class="btn btn-primary">Filtra</button>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
|
|
<table class="table table-bordered table-striped">
|
|
<thead>
|
|
<tr>
|
|
<th>Nome</th>
|
|
<th>Email</th>
|
|
<th>Stato</th>
|
|
<th>Permessi</th>
|
|
<th>Creato</th>
|
|
<th style="width: 150px;">Azioni</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@foreach($utenti as $utente)
|
|
<tr>
|
|
<td>
|
|
<strong>{{ $utente->name }}</strong>
|
|
@if($utente->isSuperAdmin())
|
|
<span class="badge badge-danger ml-1">Admin</span>
|
|
@endif
|
|
</td>
|
|
<td>{{ $utente->email }}</td>
|
|
<td>
|
|
@switch($utente->status)
|
|
@case('active')
|
|
<span class="badge badge-success">Attivo</span>
|
|
@break
|
|
@case('suspended')
|
|
<span class="badge badge-secondary">Sospeso</span>
|
|
@break
|
|
@case('pending')
|
|
<span class="badge badge-warning">In attesa</span>
|
|
@break
|
|
@endswitch
|
|
</td>
|
|
<td>
|
|
@php $summary = $utente->getPermissionsSummary(); @endphp
|
|
<small>
|
|
@foreach($summary as $module => $level)
|
|
@if($level !== 'Nessuno')
|
|
<span class="text-{{ $level === 'Completo' ? 'success' : 'info' }}">{{ ucfirst($module) }}: {{ $level }}</span><br>
|
|
@endif
|
|
@endforeach
|
|
</small>
|
|
</td>
|
|
<td>{{ $utente->created_at->format('d/m/Y') }}</td>
|
|
<td>
|
|
<a href="{{ url('/admin/utenti/' . $utente->id . '/edit') }}" class="btn btn-xs btn-warning">
|
|
<i class="fas fa-edit"></i>
|
|
</a>
|
|
@if($utente->id !== auth()->id())
|
|
<form method="POST" action="{{ url('/admin/utenti/' . $utente->id) }}" style="display: inline;">
|
|
@csrf @method('DELETE')
|
|
<button type="submit" class="btn btn-xs btn-danger" onclick="return confirm('Eliminare questo utente?')">
|
|
<i class="fas fa-trash"></i>
|
|
</button>
|
|
</form>
|
|
@endif
|
|
</td>
|
|
</tr>
|
|
@endforeach
|
|
</tbody>
|
|
</table>
|
|
|
|
{{ $utenti->links() }}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@endsection |