++ proclamatori senza email e telefono; il link si copia o si condivide

- Migrazione: tolte le colonne email e telefono dei proclamatori (vuote
  in produzione). Tolti da form, scheda, elenco, XML (un file vecchio si
  importa ignorandoli).
- Invio del link: solo "Copia link" e "Condividi…" (menu di condivisione
  del telefono, navigator.share): il destinatario lo sceglie chi usa
  l'app. Via WhatsApp diretto, canale email, notifica LinkTerritorio,
  componente x-whatsapp.
- Elenco assegnati: "Condividi" al posto di WhatsApp; a condivisione
  fatta il link risulta inviato.
- Informativa privacy, README, HANDOFF e test aggiornati.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Francesco Picone
2026-10-19 16:57:23 +02:00
parent 3000ca9939
commit 7384a4b39d
25 changed files with 436 additions and 674 deletions

View File

@@ -73,13 +73,13 @@ class PrivacyTest extends TestCase
public function test_conta_i_dati_conservati_senza_mostrarli(): void
{
Setting::firstOrCreate([], ['congregazione_nome' => 'Prova']);
Proclamatore::create(['nome' => 'Mario', 'cognome' => 'Rossi', 'attivo' => true, 'email' => 'mario@example.test', 'telefono' => '3331234567']);
Proclamatore::create(['nome' => 'Mario', 'cognome' => 'Rossi', 'attivo' => true]);
Proclamatore::create(['nome' => 'Anna', 'cognome' => 'Verdi', 'attivo' => false]);
$this->actingAs($this->admin)->get(route('privacy'))
->assertSee('2 proclamatori, di cui 1 attivi; 1 con email e 1 con numero di telefono')
->assertDontSee('Rossi')
->assertDontSee('mario@example.test');
->assertSee('2 proclamatori, di cui 1 attivi;')
->assertSee('Nessun numero di telefono né indirizzo email')
->assertDontSee('Rossi');
}
public function test_senza_posta_dice_che_non_si_inviano_email(): void