v5.3.50  Release-Notes

Update auf v5.3.50

Diese Version verlagert alle generierten Dateien nach typo3temp/assets/t3sbootstrap/ und macht EXT:t3sb_package überflüssig.

Auf einen Blick

Neuer Ablageort

Alles Generierte liegt unter typo3temp/assets/t3sbootstrap/ statt im Sitepackage.

t3sb_package entfällt

Die Abhängigkeit ist raus. Auch eine Installation ohne Composer braucht das Paket nicht mehr.

Selbstheilend

Fehlendes TypoScript und SCSS wird beim nächsten Frontend-Aufruf aus der Datenbank neu geschrieben.

Upgrade-Wizard

Vorhandene Dateien werden einmalig an den neuen Ort kopiert. Gelöscht wird nichts.

RTE: Alert-Dropdown

Alle acht Bootstrap-5-Varianten, Wechsel der Variante und Aufheben der Box inklusive.

Konfiguration übertragen

Export und Import der Konfiguration sitzen jetzt direkt im T3SB-Config-Modul.

Generierte Dateien liegen jetzt in typo3temp

Heruntergeladene CSS/JS, die Bootstrap-Quellen, das custom SCSS und das ausgelagerte TypoScript wurden bisher nach EXT:t3sb_package/Resources/Public/ geschrieben — also in ein Composer-Paket, das bei jedem composer update ersetzt wird. Neuer Ort:

typo3temp/assets/t3sbootstrap/
    TypoScript/       t3sbconstants.typoscript, t3sbsetup.typoscript
    T3SB-SCSS/        custom-variables-<uid>.scss, custom-<uid>.scss
    T3SB-CSS/         heruntergeladenes CSS
    T3SB-JS/          heruntergeladenes JS
    T3SB-Bootstrap/   Bootstrap-Quellen aus dem Release-Zip
    css/              kompiliertes CSS

TypoScript und SCSS sind Ableitungen aus dem Konfigurations-Datensatz in der Datenbank, das kompilierte CSS ist eine Ableitung davon, und die Downloads holt t3sbootstrap:cdnToLocal zurück. Nichts davon ist eine Quelle, alles ist ein Cache — und Caches gehören nach typo3temp/.

EXT:t3sb_package wird nicht mehr benötigt

Die Abhängigkeit ist aus composer.json und ext_emconf.php entfernt. Bestehende Installationen können das Paket weiter installiert lassen; es wird nur nicht mehr beschrieben.

Fehlende Dateien werden selbst wiederhergestellt

Eine neue Middleware schreibt TypoScript und SCSS aus dem Konfigurations-Datensatz neu, sobald sie fehlen — nach einem Deployment, nach „Remove Temporary Assets“ oder auf einer frischen Installation. Sie läuft vor der TypoScript-Auflösung, weil TYPO3 fehlende Dateien aus includeCSS/includeJS ohne Fehlermeldung verwirft und das Ergebnis in den Page-Cache schreibt.

Upgrade-Wizard

Ein neuer Wizard im Install Tool kopiert vorhandene Dateien aus EXT:t3sb_package/Resources/Public/ einmalig an den neuen Ort. Er greift auch automatisch beim ersten Frontend-Request, falls das Install Tool nicht geöffnet wird. Gelöscht wird nichts.

Neue Einstellung: flexformDir

Bisher las die Extension die erweiterten FlexForm-Definitionen fest aus EXT:t3sb_package/Configuration/FlexForms/. Das Verzeichnis ist jetzt einstellbar, zum Beispiel EXT:mein_sitepackage/Configuration/FlexForms/.

Bleibt die Einstellung leer, wird weiterhin das Verzeichnis von EXT:t3sb_package verwendet, solange diese Extension installiert ist — bestehende Setups ändern sich also nicht. Ist sie nicht installiert und die Einstellung leer, werden die FlexForms nicht erweitert. Voraussetzung bleibt in allen Fällen, dass flexformExtend aktiviert ist.

RTE: Alert-Box als Auswahlliste

Die Schaltfläche „Insert Box“ im Rich-Text-Editor ist jetzt ein Dropdown mit allen acht Bootstrap-5-Alert-Varianten:

PrimarySecondarySuccessDangerWarningInfoLightDark

Die Variante einer bestehenden Box lässt sich nachträglich wechseln, ein Eintrag „Remove Box“ hebt die Box wieder auf und behält den Inhalt.

Ein eigenes Stylesheet für den Editorbereich zeigt die Alert-Farben jetzt auch im Backend — bisher war die Box dort unformatiert, weil das Backend kein Bootstrap lädt.

Konfiguration übertragen — jetzt im T3SB-Modul

Die Konfiguration einer Root-Seite lässt sich jetzt exportieren und wieder importieren — als Aufklappbereich „Konfiguration übertragen“ direkt im T3SB-Config-Modul, unter den ausgelagerten Konstanten. Damit wandert eine fertige Konfiguration von einer Installation in die nächste, ohne Datenbank-Dump.

Der Export schreibt die Konfiguration als JSON-Datei — ohne uid und ohne pid, Dateireferenzen als kombinierte Identifier. Der Seitenbaum der Zielinstallation darf also völlig anders aussehen.

Import-ModusVerhalten

Aktualisieren

Voreinstellung

Der vorhandene Datensatz wird überschrieben und behält seine uid. Felder, die der Import nicht enthält, werden auf ihren Standardwert zurückgesetzt — das Ergebnis entspricht also exakt dem Export.

Liegen mehrere Konfigurationen auf der Zielseite, wird die wirksame aktualisiert und die übrigen werden entfernt.

Ersetzen

Der vorhandene Datensatz wird gelöscht und ein neuer angelegt. Die uid ändert sich, der alte Datensatz bleibt als gelöschte Zeile zurück.

Hinzufügen

Nur möglich, wenn die Zielseite noch keine Konfiguration hat — sonst bricht der Import mit einer Meldung ab.

Nicht im Export enthalten sind die Site Settings — Bootstrap-Version, Bootswatch-Theme und Google Fonts stehen in der Site-Konfiguration und wandern mit dem Repository, nicht mit der JSON-Datei.

Hinweise zum Update

1. Caches leeren. Mehrere Konstruktor-Signaturen haben sich geändert, der kompilierte DI-Container muss neu gebaut werden.

2. Datenbank-Update anstoßen. Die Tabelle tx_t3sbootstrap_list_item_inline bekommt eine Spalte hidden.

3. Deployment beachten. Wer typo3temp/ nicht zwischen Releases übernimmt, muss nach jedem Deployment t3sbootstrap:cdnToLocal ausführen. Das Backend-Modul weist darauf hin, wenn lokale Auslieferung konfiguriert ist und die Dateien fehlen.