{{-- Componente Blade: Intestazione Report - Visualizza una barra blu con logo a sinistra, titolo centrato, telefono/email a destra - Compatibile sia per PDF (DomPDF) che per web - Gestione logo: se file esiste, converte in base64 per PDF, altrimenti mostra un box placeholder - Tutti i parametri sono opzionali --}} @php // Funzione per convertire il logo in base64 se necessario (solo per PDF) function logoToBase64($logo) { if (!$logo) return null; $path = public_path('storage/'.$logo); if (file_exists($path)) { $type = pathinfo($path, PATHINFO_EXTENSION); $data = file_get_contents($path); return 'data:image/' . $type . ';base64,' . base64_encode($data); } return null; } $logoSrc = app()->runningInConsole() ? '' : (request()->is('pdf*') ? logoToBase64($logo) : (auth()->check() && $logo ? route('logo.profilo') : ($logo ? asset('storage/'.$logo) : ''))); if (!$logoSrc && $logo && !request()->is('pdf*')) $logoSrc = auth()->check() ? route('logo.profilo') : asset('storage/'.$logo); @endphp
{{-- Logo a sinistra --}}
@if($logoSrc) Logo @else
@endif
{{-- Titolo centrato --}}
{{ $titolo ?? '' }}
{{-- Telefono ed email a destra --}}
@if(!empty($telefono))
Tel. {{ $telefono }}
@endif @if(!empty($email))
e-mail: {{ $email }}
@endif