91 lines
4.7 KiB
PHP
Executable File
91 lines
4.7 KiB
PHP
Executable File
@extends('admin.layouts.netgescon')
|
|
|
|
@section('title', 'Modifica Utente')
|
|
|
|
@section('breadcrumb')
|
|
<a href="{{ route('superadmin.dashboard') }}">SuperAdmin</a>
|
|
<i class="fas fa-chevron-right text-xs"></i>
|
|
<a href="{{ route('superadmin.users.index') }}">Utenti</a>
|
|
<i class="fas fa-chevron-right text-xs"></i>
|
|
<span>Modifica</span>
|
|
@endsection
|
|
|
|
@section('content')
|
|
<form method="POST" action="{{ route('superadmin.users.update', $user) }}" class="space-y-4">
|
|
@csrf @method('PUT')
|
|
<div class="netgescon-card p-4 grid grid-cols-1 md:grid-cols-2 gap-4">
|
|
<div>
|
|
<label class="block text-sm text-gray-600">Nome</label>
|
|
<input type="text" name="name" class="netgescon-input w-full" value="{{ old('name', $user->name) }}" required>
|
|
</div>
|
|
<div>
|
|
<label class="block text-sm text-gray-600">Email</label>
|
|
<input type="email" name="email" class="netgescon-input w-full" value="{{ old('email', $user->email) }}" required>
|
|
</div>
|
|
<div>
|
|
<label class="block text-sm text-gray-600">Ruolo</label>
|
|
<select name="role" class="netgescon-input w-full" required>
|
|
@foreach($roles as $r)
|
|
<option value="{{ $r->name }}" @selected($user->roles->pluck('name')->contains($r->name))>{{ $r->name }}</option>
|
|
@endforeach
|
|
</select>
|
|
</div>
|
|
<div>
|
|
<label class="block text-sm text-gray-600">Scadenza Accesso (opzionale)</label>
|
|
<input type="date" name="expires_at" class="netgescon-input w-full" value="{{ old('expires_at', optional($user->expires_at ?? null)->format('Y-m-d')) }}">
|
|
</div>
|
|
<div>
|
|
<label class="block text-sm text-gray-600">Stato Registrazione</label>
|
|
<select name="registration_status" class="netgescon-input w-full" required>
|
|
<option value="pending" @selected(old('registration_status', $user->registration_status) === 'pending')>pending</option>
|
|
<option value="approved" @selected(old('registration_status', $user->registration_status) === 'approved')>approved</option>
|
|
<option value="rejected" @selected(old('registration_status', $user->registration_status) === 'rejected')>rejected</option>
|
|
</select>
|
|
</div>
|
|
<div>
|
|
<label class="block text-sm text-gray-600">Stato Account</label>
|
|
<label class="inline-flex items-center gap-2 mt-2 text-sm">
|
|
<input type="checkbox" name="is_active" value="1" @checked(old('is_active', $user->is_active))>
|
|
<span>Account attivo</span>
|
|
</label>
|
|
</div>
|
|
<div>
|
|
<label class="block text-sm text-gray-600">Piano Sottoscrizione</label>
|
|
<select name="subscription_plan_id" class="netgescon-input w-full">
|
|
<option value="">Nessuno</option>
|
|
@foreach($plans as $plan)
|
|
<option value="{{ $plan->id }}" @selected((int) old('subscription_plan_id', $user->subscription_plan_id) === $plan->id)>{{ $plan->name }}</option>
|
|
@endforeach
|
|
</select>
|
|
</div>
|
|
<div class="md:col-span-2">
|
|
<label class="block text-sm text-gray-600">Motivo Rifiuto (opzionale)</label>
|
|
<textarea name="rejection_reason" class="netgescon-input w-full" rows="2">{{ old('rejection_reason', $user->rejection_reason) }}</textarea>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="netgescon-card p-4">
|
|
<h3 class="font-semibold mb-2">Permessi Modulo GESCON Import</h3>
|
|
@php $perms = $user->getPermissionNames()->toArray(); @endphp
|
|
<div class="flex flex-wrap gap-4">
|
|
<label class="inline-flex items-center gap-2 text-sm">
|
|
<input type="checkbox" name="permissions[]" value="gescon-import.view" @checked(in_array('gescon-import.view', $perms))>
|
|
<span>Visualizza</span>
|
|
</label>
|
|
<label class="inline-flex items-center gap-2 text-sm">
|
|
<input type="checkbox" name="permissions[]" value="gescon-import.execute" @checked(in_array('gescon-import.execute', $perms))>
|
|
<span>Esecuzione Import</span>
|
|
</label>
|
|
<label class="inline-flex items-center gap-2 text-sm">
|
|
<input type="checkbox" name="permissions[]" value="contabilita-gescon.view" @checked(in_array('contabilita-gescon.view', $perms))>
|
|
<span>Contabilità Gescon</span>
|
|
</label>
|
|
</div>
|
|
<p class="text-xs text-gray-500 mt-2">Nota: i permessi vengono applicati oltre al ruolo selezionato.</p>
|
|
</div>
|
|
<div class="flex justify-end">
|
|
<button class="netgescon-btn netgescon-btn-primary">Salva</button>
|
|
</div>
|
|
</form>
|
|
@endsection
|