++ Richieste dal modulo pubblico, territori cartacei, S-13 mensile per email
- /richiesta: modulo pubblico (nuovo territorio o riconsegna) con campo trappola, tempo minimo e limite orario; nome e note cifrati, avviso per email a chi ha richieste.gestisci (amministratore, assistente) - Home: riquadro Richieste con i proclamatori dal nome simile; porta su Assegna/Rientra già esistenti, che chiudono la richiesta; Scarta - Cartaceo sull'assegnazione (Assegna e Il mio gruppo), etichetta nell'elenco degli assegnati, pagina Cartacei, passa per l'XML - registro:invia-s13 agli amministratori l'ultima domenica del mese; richieste:pulizia dopo 90 giorni dalla gestione - Privacy, README e HANDOFF aggiornati; test in RichiesteTest Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,74 @@
|
||||
<div class="bg-white shadow-xl rounded-2xl p-6 sm:p-8 my-8" style="border-top:4px solid #6366f1">
|
||||
{{-- Modulo pubblico (ModuloRichiesta): nessun dato già presente si vede
|
||||
qui, solo i campi da compilare. --}}
|
||||
<div class="text-center mb-6">
|
||||
<div class="mx-auto h-14 w-14 rounded-xl flex items-center justify-center text-white font-bold text-xl mb-4 shadow-lg" style="background:linear-gradient(135deg,#4338ca,#6366f1)">T2</div>
|
||||
<h1 class="text-2xl font-bold text-gray-900">Richiesta territorio</h1>
|
||||
<p class="text-gray-500 text-sm mt-1">{{ $congregazione }}</p>
|
||||
</div>
|
||||
|
||||
@if($inviata)
|
||||
<div class="rounded-lg bg-green-50 border border-green-200 px-4 py-3 text-sm text-green-800" role="status">
|
||||
<p class="font-semibold">Richiesta inviata.</p>
|
||||
<p class="mt-1">Il responsabile dei territori la vedrà e ti farà sapere.</p>
|
||||
</div>
|
||||
<div class="mt-5 text-center">
|
||||
<x-btn variante="secondary" wire:click="nuova">Fai un'altra richiesta</x-btn>
|
||||
</div>
|
||||
@else
|
||||
<form wire:submit="invia" class="space-y-5">
|
||||
<fieldset>
|
||||
<legend class="block text-sm font-medium text-gray-700 mb-2">Cosa ti serve? *</legend>
|
||||
<div class="grid grid-cols-1 sm:grid-cols-2 gap-2">
|
||||
<label class="flex items-center gap-2 rounded-lg border border-gray-200 px-3 py-3 text-sm cursor-pointer has-[:checked]:border-indigo-400 has-[:checked]:bg-indigo-50">
|
||||
<input type="radio" wire:model.live="tipo" value="{{ \App\Models\Richiesta::NUOVO }}" class="h-4 w-4 text-indigo-600">
|
||||
Chiedo un territorio nuovo
|
||||
</label>
|
||||
<label class="flex items-center gap-2 rounded-lg border border-gray-200 px-3 py-3 text-sm cursor-pointer has-[:checked]:border-indigo-400 has-[:checked]:bg-indigo-50">
|
||||
<input type="radio" wire:model.live="tipo" value="{{ \App\Models\Richiesta::RICONSEGNA }}" class="h-4 w-4 text-indigo-600">
|
||||
Riconsegno un territorio
|
||||
</label>
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<div>
|
||||
<label for="nome" class="block text-sm font-medium text-gray-700">Nome e cognome *</label>
|
||||
<input wire:model="nome" type="text" id="nome" autocomplete="name" maxlength="100"
|
||||
class="mt-1 block w-full rounded-lg border-gray-300 shadow-sm focus:border-indigo-500 focus:ring-indigo-500 text-base sm:text-sm px-4 py-2.5">
|
||||
@error('nome') <p class="mt-1 text-sm text-red-600">{{ $message }}</p> @enderror
|
||||
</div>
|
||||
|
||||
@if($tipo === \App\Models\Richiesta::RICONSEGNA)
|
||||
<div>
|
||||
<label for="numero" class="block text-sm font-medium text-gray-700">N° del territorio *</label>
|
||||
<input wire:model="numero" type="text" id="numero" inputmode="numeric" maxlength="20" autocomplete="off"
|
||||
class="mt-1 block w-full rounded-lg border-gray-300 shadow-sm focus:border-indigo-500 focus:ring-indigo-500 text-base sm:text-sm px-4 py-2.5">
|
||||
@error('numero') <p class="mt-1 text-sm text-red-600">{{ $message }}</p> @enderror
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<div>
|
||||
<label for="note" class="block text-sm font-medium text-gray-700">
|
||||
{{ $tipo === \App\Models\Richiesta::RICONSEGNA ? 'Note' : 'Esigenze particolari / note' }}
|
||||
</label>
|
||||
<textarea wire:model="note" id="note" rows="3" maxlength="1000"
|
||||
class="mt-1 block w-full rounded-lg border-gray-300 shadow-sm focus:border-indigo-500 focus:ring-indigo-500 text-base sm:text-sm px-4 py-2.5"></textarea>
|
||||
@error('note') <p class="mt-1 text-sm text-red-600">{{ $message }}</p> @enderror
|
||||
</div>
|
||||
|
||||
{{-- Trappola per i programmi che riempiono ogni campo: nascosta a chi
|
||||
guarda e ai lettori di schermo. --}}
|
||||
<div class="tm-trappola" aria-hidden="true">
|
||||
<label for="sito">Lascia vuoto questo campo</label>
|
||||
<input wire:model="sito" type="text" id="sito" tabindex="-1" autocomplete="off">
|
||||
</div>
|
||||
|
||||
<x-btn variante="primary" type="submit" class="w-full">Invia la richiesta</x-btn>
|
||||
|
||||
<p class="text-xs text-gray-500">
|
||||
Nome e note servono solo a gestire questa richiesta: li vedono il responsabile dei territori e i suoi
|
||||
assistenti, e vengono cancellati {{ \App\Console\Commands\PuliziaRichieste::GIORNI }} giorni dopo che la richiesta è stata gestita.
|
||||
</p>
|
||||
</form>
|
||||
@endif
|
||||
</div>
|
||||
Reference in New Issue
Block a user