++ Il mio gruppo: il numero del territorio apre l'anteprima
Il numero diventa un pulsante che apre una finestra con la miniatura e il collegamento al PDF. La miniatura passa dalla rotta nuova mio-gruppo.miniatura, con la stessa regola del PDF: solo i territori del pacchetto del gruppo sorvegliato. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -31,8 +31,7 @@ class TerritorioFileController extends Controller
|
||||
*/
|
||||
public function pdfGruppo(Territorio $territorio): Response
|
||||
{
|
||||
$gruppo = auth()->user()->gruppoSorvegliato();
|
||||
abort_unless($gruppo && $territorio->gruppo_servizio_id === $gruppo->id, 403);
|
||||
$this->delPacchetto($territorio);
|
||||
|
||||
return $this->pdf($territorio);
|
||||
}
|
||||
@@ -42,6 +41,21 @@ class TerritorioFileController extends Controller
|
||||
return $this->servi($territorio->thumbnail_path, null, null);
|
||||
}
|
||||
|
||||
/** La miniatura per l'anteprima in "Il mio gruppo", con la stessa regola del PDF. */
|
||||
public function miniaturaGruppo(Territorio $territorio): Response
|
||||
{
|
||||
$this->delPacchetto($territorio);
|
||||
|
||||
return $this->miniatura($territorio);
|
||||
}
|
||||
|
||||
/** Il territorio deve stare nel pacchetto del gruppo che l'utente sorveglia. */
|
||||
private function delPacchetto(Territorio $territorio): void
|
||||
{
|
||||
$gruppo = auth()->user()->gruppoSorvegliato();
|
||||
abort_unless($gruppo && $territorio->gruppo_servizio_id === $gruppo->id, 403);
|
||||
}
|
||||
|
||||
public function versione(TerritorioPdfVersione $versione): Response
|
||||
{
|
||||
$numero = $versione->territorio?->numero ?? 'senza-territorio';
|
||||
|
||||
@@ -328,4 +328,12 @@ class Territorio extends Model
|
||||
? route('territori.file.miniatura', ['territorio' => $this->id, 'v' => substr(md5($this->thumbnail_path), 0, 8)])
|
||||
: null;
|
||||
}
|
||||
|
||||
/** La miniatura per il sorvegliante di gruppo ("Il mio gruppo"): solo del suo pacchetto. */
|
||||
public function miniaturaGruppoUrl(): ?string
|
||||
{
|
||||
return $this->thumbnail_path
|
||||
? route('mio-gruppo.miniatura', ['territorio' => $this->id, 'v' => substr(md5($this->thumbnail_path), 0, 8)])
|
||||
: null;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user