- Server di posta in Impostazioni (password cifrata, email di prova): se compilato prende il posto del .env; non si esporta e l'import XML non lo cancella. MAIL_SCHEME=tls nel .env.example non era valido per Laravel 11. - Proclamatori con email e telefono facoltativi, cifrati, nell'XML e cancellati dall'anonimizzazione; il numero apre WhatsApp. - Dopo l'assegnazione un riquadro in evidenza con il link del PDF, "Invia su WhatsApp" con il messaggio pronto e la scelta "inviato / non ancora", che resta finché non si sceglie. - Conferma dell'email obbligatoria per tutti gli utenti, anche esistenti: email in italiano, link valido senza login, nuova conferma a ogni cambio di indirizzo, "Reinvia conferma" in Utenti. Senza conferma restano raggiungibili profilo, cambio password e, per l'admin, il server di posta; comando utenti:conferma-email per l'emergenza. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
52 lines
3.2 KiB
PHP
52 lines
3.2 KiB
PHP
<div>
|
|
<div class="mb-6">
|
|
<a href="{{ route('proclamatori.index') }}" class="inline-flex items-center gap-1 text-sm text-gray-500 hover:text-indigo-600 transition-colors mb-1">
|
|
<svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 19l-7-7 7-7"/></svg>
|
|
Torna alla lista
|
|
</a>
|
|
<h1 class="text-2xl font-bold text-gray-900">{{ $titolo }}</h1>
|
|
</div>
|
|
|
|
<div class="bg-white rounded-xl shadow-sm border border-gray-200 p-6 max-w-lg">
|
|
<form wire:submit="save" class="space-y-4">
|
|
<div>
|
|
<label for="cognome" class="block text-sm font-medium text-gray-700">Cognome *</label>
|
|
<input wire:model="cognome" type="text" id="cognome" class="mt-1 block w-full rounded-lg border-gray-300 shadow-sm focus:ring-indigo-500 focus:border-indigo-500 text-sm" required>
|
|
@error('cognome') <p class="text-red-500 text-xs mt-1">{{ $message }}</p> @enderror
|
|
</div>
|
|
|
|
<div>
|
|
<label for="nome" class="block text-sm font-medium text-gray-700">Nome *</label>
|
|
<input wire:model="nome" type="text" id="nome" class="mt-1 block w-full rounded-lg border-gray-300 shadow-sm focus:ring-indigo-500 focus:border-indigo-500 text-sm" required>
|
|
@error('nome') <p class="text-red-500 text-xs mt-1">{{ $message }}</p> @enderror
|
|
</div>
|
|
|
|
<div>
|
|
<label for="telefono" class="block text-sm font-medium text-gray-700">Telefono</label>
|
|
<input wire:model="telefono" type="tel" id="telefono" autocomplete="off" placeholder="333 1234567"
|
|
class="mt-1 block w-full rounded-lg border-gray-300 shadow-sm focus:ring-indigo-500 focus:border-indigo-500 text-sm">
|
|
<p class="text-xs text-gray-500 mt-1">Facoltativo. Serve a mandare il link del territorio su WhatsApp. Senza prefisso si considera un numero italiano.</p>
|
|
@error('telefono') <p class="text-red-500 text-xs mt-1">{{ $message }}</p> @enderror
|
|
</div>
|
|
|
|
<div>
|
|
<label for="email" class="block text-sm font-medium text-gray-700">Email</label>
|
|
<input wire:model="email" type="email" id="email" autocomplete="off"
|
|
class="mt-1 block w-full rounded-lg border-gray-300 shadow-sm focus:ring-indigo-500 focus:border-indigo-500 text-sm">
|
|
<p class="text-xs text-gray-500 mt-1">Facoltativa.</p>
|
|
@error('email') <p class="text-red-500 text-xs mt-1">{{ $message }}</p> @enderror
|
|
</div>
|
|
|
|
<div class="flex items-center gap-2">
|
|
<input wire:model="attivo" type="checkbox" id="attivo" class="rounded border-gray-300 text-indigo-600 focus:ring-indigo-500">
|
|
<label for="attivo" class="text-sm text-gray-700">Attivo</label>
|
|
</div>
|
|
|
|
<div class="flex items-center gap-3 pt-4">
|
|
<x-btn variante="primary" type="submit">{{ $btnLabel }}</x-btn>
|
|
<x-btn variante="secondary" :href="route('proclamatori.index')">Annulla</x-btn>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|