Anzeige der Revisionen in einem PDF Export

getestet mit Version 24.02 
 Anforderung 
 Um die Revisionen und ggfs. den Changelog in einem PDF Export ganz zum Schluss anzeigen lassen zu können sind einige Anpassungen nötig. 
 Zuerst habe ich dafür einen zusätzlichen Link in das Export-Menü eingebaut um einmal eine Version ohne Revisionen und eine mit Revisionen exportieren zu können. 
 betroffene Dateien 
 Dateien müssen sich in der entsprechenden Struktur unterhalb des Themes befinden. Ordner = kursiv Dateien = fett 
 
 entities 
 
 export-menu.blade.php 
 
 
 exports 
 
 parts 
 
 revisions-index-row-compact.blade.php 
 
 
 page.blade.php 
 
 
 
 Inhalte der Dateien 
 
 export-menu.blade.php 
 Hier wurde ein weiterer Link in Zeile 6 eingefügt, der mittels GET den Wert history=true übergibt. Diese GET Variable kann dann später abgefragt werden. 
 [...]
 <ul refs="dropdown@menu" class="wide dropdown-menu" role="menu">
 <li><a href="{{ $entity->getUrl('/export/html') }}" target="_blank" class="label-item"><span>{{ trans('entities.export_html') }}</span><span>.html</span></a></li>
 <li><a href="{{ $entity->getUrl('/export/pdf') }}" target="_blank" class="label-item"><span>{{ trans('entities.export_pdf') }}</span><span>.pdf</span></a></li>
 <li><a href="{{ $entity->getUrl('/export/pdf?qr=true') }}" target="_blank" class="label-item"><span>{{ trans('entities.export_pdf') }} + QR</span><span>.pdf</span></a></li>
 <li><a href="{{ $entity->getUrl('/export/pdf?history=true') }}" target="_blank" class="label-item"><span>{{ trans('entities.export_pdf') }} + History</span><span>.pdf</span></a></li>
 <li><a href="{{ $entity->getUrl('/export/plaintext') }}" target="_blank" class="label-item"><span>{{ trans('entities.export_text') }}</span><span>.txt</span></a></li>
 <li><a href="{{ $entity->getUrl('/export/markdown') }}" target="_blank" class="label-item"><span>{{ trans('entities.export_md') }}</span><span>.md</span></a></li>
 </ul>
[...] 
 
 
 revisions-index-row-compact.blade.php 
 Ich habe in dem Ordner eine weitere Datei angelegt und mit folgendem Inhalt gefüllt: 
 <tr>
 <td>{{ $revision->created_at->isoFormat('D MMMM Y') }}</td>
 <td>{{ $revision->revision_number == 0 ? '' : $revision->revision_number }}</td>
 <td>@if($revision->createdBy) {{ $revision->createdBy->name }} @else {{ trans('common.deleted_user') }} @endif</td>
 <td>{{ $revision->summary }}</td>
</tr> 
 
 
 page.blade.php 
 In dieser Datei habe ich an das Ende der Seite folgenden Code eingefügt und die alte Meta Ansicht deaktiviert. Der geänderte Code beginnt in Zeile 7 (in diesem Codeschnipsel). 
 [...]
 <div style="clear:left;"></div>

 {!! $page->renderedHTML ?? $page->html !!}
 </div>

 @if(request()->query('history'))
 <hr> 
 <h2>Dokumentenhistorie</h2>
 <table>
 <tr>
 <th>Datum</th>
 <th>Version</th>
 <th>Autor</th>
 <th>Anmerkungen</th>
 </tr>
 @if(count($page->revisions) > 0)
 @foreach($page->revisions as $index => $revision)
 @include('exports.parts.revisions-index-row-compact', ['revision' => $revision, 'current' => $page->revision_count === $revision->revision_number])
 @endforeach
 @else
 <p>{{ trans('entities.pages_revisions_none') }}</p>
 @endif
 </table>
 @endif

 <!-- <hr>

 <div class="text-muted text-small">
 @include('exports.parts.meta', ['entity' => $page])
 </div> -->
@endsection
 
 Der Codeabschnitt kann auch an jeder anderen Stelle hinterlegt werden, für mich hat es aber am Ende des Dokuments den meisten Sinn gemacht. 
 
 Ich habe bei den Anpassungen auf Übersetzungen verzichtet, das würde sich aber problemlos ändern lassen. 
 Screenshots