++ scheda territorio: aperta dalla Home non mostra lo storico delle assegnazioni

I link della Home portano ?dalla_home=1; la scheda nasconde lo storico
(e non lo carica), con "Mostra lo storico delle assegnazioni" per aprirlo.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Francesco Picone
2026-10-20 15:52:00 +02:00
parent 6f88c65d73
commit f1f340803a
6 changed files with 62 additions and 12 deletions

View File

@@ -13,21 +13,36 @@ class TerritorioShow extends Component
public Territorio $territorio;
/**
* Aperta dalla Home (?dalla_home=1, lo mettono solo i link della Home) la
* scheda non mostra lo storico delle assegnazioni: lì serve il territorio,
* non la sua storia. "Mostra lo storico" lo apre comunque.
*/
public bool $storicoNascosto = false;
public function mount(Territorio $territorio)
{
$this->territorio = $territorio->load(['zona', 'tipologia', 'assegnazioneCorrente.proclamatore', 'ultimaAssegnazione']);
$this->storicoNascosto = request()->boolean('dalla_home');
}
public function mostraStorico(): void
{
$this->storicoNascosto = false;
}
public function render()
{
$assegnazioni = Assegnazione::where('territorio_id', $this->territorio->id)
->with(['proclamatore', 'annoTeocratico', 'campagna', 'creatoDa', 'rientratoDa'])
->orderByDesc('assigned_at')
->orderByDesc('id')
->get()
->groupBy(fn($a) => $a->annoTeocratico->label)
// Dal più recente: gli anni ("2026-2027") si ordinano come testo.
->sortKeysDesc();
$assegnazioni = $this->storicoNascosto
? collect()
: Assegnazione::where('territorio_id', $this->territorio->id)
->with(['proclamatore', 'annoTeocratico', 'campagna', 'creatoDa', 'rientratoDa'])
->orderByDesc('assigned_at')
->orderByDesc('id')
->get()
->groupBy(fn($a) => $a->annoTeocratico->label)
// Dal più recente: gli anni ("2026-2027") si ordinano come testo.
->sortKeysDesc();
return view('livewire.territori.territorio-show', [
'activeAssignment' => $this->territorio->assegnazioneCorrente,