@extends('admin.layout')

@section('title', 'Modifica Utente')
@section('page_title', 'Modifica Utente: ' . $user->name)

@section('breadcrumbs')
    <li class="breadcrumb-item"><a href="/admin/utenti">Admin</a></li>
    <li class="breadcrumb-item"><a href="/admin/utenti">Utenti</a></li>
    <li class="breadcrumb-item active">{{ $user->name }}</li>
@endsection

@section('content')
<div class="row">
    <div class="col-md-8">
        <div class="card">
            <div class="card-header">
                <h3 class="card-title">Dati Utente</h3>
            </div>
            <div class="card-body">
                <form method="POST" action="/admin/utenti/{{ $user->id }}">
                    @csrf @method('PUT')
                    <div class="form-group">
                        <label>Nome *</label>
                        <input type="text" name="name" class="form-control" required value="{{ old('name', $user->name) }}">
                    </div>
                    <div class="form-group">
                        <label>Email *</label>
                        <input type="email" name="email" class="form-control" required value="{{ old('email', $user->email) }}">
                    </div>
                    <div class="form-group">
                        <label>Nuova Password <small>(lascia vuoto per non cambiare)</small></label>
                        <input type="password" name="password" class="form-control" minlength="8">
                    </div>
                    <div class="form-group">
                        <label>Conferma Password</label>
                        <input type="password" name="password_confirmation" class="form-control" minlength="8">
                    </div>
                    <div class="form-group">
                        <label>Stato</label>
                        <select name="status" class="form-control" required>
                            <option value="active" {{ old('status', $user->status) === 'active' ? 'selected' : '' }}>Attivo</option>
                            <option value="suspended" {{ old('status', $user->status) === 'suspended' ? 'selected' : '' }}>Sospeso</option>
                            <option value="pending" {{ old('status', $user->status) === 'pending' ? 'selected' : '' }}>In attesa</option>
                        </select>
                    </div>
                    <div class="form-group">
                        <label>Ruolo Predefinito</label>
                        <select name="role_preset_id" class="form-control" id="rolePresetSelect">
                            <option value="">Personalizzato</option>
                            @foreach($rolePresets as $preset)
                                <option value="{{ $preset->id }}" {{ old('role_preset_id', $user->role_preset_id) == $preset->id ? 'selected' : '' }}>
                                    {{ $preset->name }} - {{ $preset->description }}
                                </option>
                            @endforeach
                        </select>
                    </div>
                    <input type="hidden" name="is_admin" value="0">
                    <div class="form-group">
                        <div class="custom-control custom-switch">
                            <input type="checkbox" class="custom-control-input" id="isAdmin" name="is_admin" value="1" {{ old('is_admin', $user->isSuperAdmin() ? '1' : '0') === '1' ? 'checked' : '' }}>
                            <label class="custom-control-label" for="isAdmin">Superadmin (bypass ACL)</label>
                        </div>
                    </div>

                    <div id="permissionsSection" class="mt-4">
                        <h5>Permessi Granulari</h5>
                        <table class="table table-sm">
                            <thead>
                                <tr>
                                    <th>Modulo</th>
                                    <th>Nessuno</th>
                                    <th>Lettura</th>
                                    <th>Completo</th>
                                </tr>
                            </thead>
                            <tbody>
                                @foreach(\App\Models\User::MODULES as $module)
                                <tr>
                                    <td><strong>{{ ucfirst($module) }}</strong></td>
                                    <td><input type="radio" name="permissions[{{ $module }}]" value="0" {{ ($user->permissions[$module] ?? 0) == 0 ? 'checked' : '' }}></td>
                                    <td><input type="radio" name="permissions[{{ $module }}]" value="1" {{ ($user->permissions[$module] ?? 0) == 1 ? 'checked' : '' }}></td>
                                    <td><input type="radio" name="permissions[{{ $module }}]" value="2" {{ ($user->permissions[$module] ?? 0) == 2 ? 'checked' : '' }}></td>
                                </tr>
                                @endforeach
                            </tbody>
                        </table>
                    </div>

                    <div class="mt-4">
                        <button type="submit" class="btn btn-primary">
                            <i class="fas fa-save"></i> Salva
                        </button>
                        <a href="/admin/utenti" class="btn btn-secondary">Annulla</a>
                    </div>
                </form>
            </div>
        </div>
    </div>
</div>
@endsection

@section('scripts')
<script>
$('#rolePresetSelect').change(function() {
    if ($(this).val()) {
        $('#permissionsSection').hide();
    } else {
        $('#permissionsSection').show();
    }
}).trigger('change');
</script>
@endsection