id)) { abort(403); } $to = (string) $request->query('to', ''); // Whitelist dei target consentiti (evita open redirect / URL arbitrari) $targets = [ 'casse-banche-movimenti' => fn() => CasseBancheMovimenti::getUrl(panel: 'admin-filament'), ]; if ($to !== '' && array_key_exists($to, $targets)) { return redirect()->to($targets[$to]()); } // Default: entro "dentro lo stabile" sul cruscotto return redirect()->to(CruscottoStabile::getUrl(panel: 'admin-filament')); } }