++ fix permessi e mobile portrait
This commit is contained in:
34
HANDOFF.md
34
HANDOFF.md
@@ -147,6 +147,40 @@ assistente e operatore); creazione/modifica/cestino restano su `territori.manage
|
||||
sono sotto `@can('territori.manage')`; il link "Dettaglio" resta visibile a
|
||||
tutti. Il menu laterale mostra "Territori" a chi ha `territori.assign`.
|
||||
|
||||
### Sola lettura per proclamatori e campagne (non-admin)
|
||||
|
||||
Stessa impostazione dei territori estesa ad altre due sezioni:
|
||||
|
||||
- **Proclamatori**: `index` e `show` restano su `proclamatori.manage` (l'assistente
|
||||
li vede in sola lettura); `create`/`edit`/`cestino` e tutte le mutazioni
|
||||
(`ProclamatoreIndex::toggleActive`/`deleteProclamatore`/`anonimizza`,
|
||||
`ProclamatoreCreate::save`, `ProclamatoreEdit::save`,
|
||||
`ProclamatoreCestino::restore`/`forceDelete`) richiedono `settings.manage`.
|
||||
`ProclamatoreIndex` è servito da una rotta rilassata, quindi i suoi metodi di
|
||||
mutazione hanno il check interno; i pulsanti in `proclamatore-index`/`-show`/
|
||||
`-cestino` sono sotto `@can('settings.manage')`. Le rotte letterali
|
||||
create/cestino restano prima del wildcard `{proclamatore}`.
|
||||
- **Campagne**: la **creazione** è ora admin-only come già modifica/eliminazione
|
||||
— `CampagnaCreate::save` chiama `authorize('settings.manage')`, la rotta
|
||||
`campagne/create` è nel gruppo `settings.manage` (registrata prima del
|
||||
wildcard) e il pulsante "Nuova Campagna" è sotto `@can('settings.manage')`.
|
||||
`index`/`show` restano su `campagne.manage` (sola lettura per l'assistente).
|
||||
|
||||
### Tabelle-elenco responsive su mobile (portrait)
|
||||
|
||||
Le liste principali usano una sola "politica" CSS invece di layout duplicati:
|
||||
la classe `table-cards` (in `resources/css/app.css`) sotto `640px` nasconde il
|
||||
`thead` e trasforma ogni riga in una scheda, con ogni cella resa come
|
||||
"ETICHETTA … valore" (l'etichetta viene dall'attributo `data-label` della `<td>`).
|
||||
Un telefono in portrait sta sotto la soglia → schede; ruotato in landscape la
|
||||
larghezza supera i 640px → torna la tabella normale (per questo landscape "non ha
|
||||
problemi"). Convenzioni: ogni `<td>` dati ha `data-label="..."`; la cella azioni
|
||||
ha classe `cell-actions` (niente label, occupa la riga a piena larghezza); le
|
||||
celle `colspan` (stato vuoto, form di modifica utente inline) restano `block` a
|
||||
piena larghezza. Applicata a: territori, proclamatori, campagne, registro,
|
||||
utenti, audit-log e i due cestini. La pagina *Assegnazioni* era già ottimizzata e
|
||||
non è stata toccata.
|
||||
|
||||
### Assegnare un territorio ne azzera il flag "prioritario"
|
||||
|
||||
`prioritario` è un flag **manuale**; `is_prioritario` è true se il flag è acceso
|
||||
|
||||
Reference in New Issue
Block a user