4T3 Base ist die Basis der 4T3 Extensions. Sie stellt grundlegende Funktionalitäten, die von anderen 4T3 Extensions genutzt werden, sowie ein Backendmodul und das BaseToolbarItem bereit.
Zusätzlich bietet sie eine JSON Ausgabe über den Systemstatus, welche auch über einen Task per Mail versendet werden kann. Ist 4T3 Productivity installiert, bietet 4T3 Base auch eine Ansicht über den Systemstatus im Backend an.
Ab Version 1.0.2 verfügt die Extension auch über einen XLF-Editor im Backend.
Setup
Nachdem 4T3 Base von GitHub heruntergeladen und installiert wurde, ist die Extension bereit zum Einsatz.
Um die Schnittstelle für den Systemstatus zu nutzen, muss ein Authorisierungscode in den Erweiterungseinstellungen angegeben werden.

Ab Version 1.0.2 kann eingestellt werden, dass der System-Cache nach Ändern einer Sprachdatei im XLF-Editor nicht automatisch gelöscht wird.

Verwendung
Backendmodul
Das Backendmodul „Base“ befindet sich im Reiter „4T3 Extensions“ und listet im Submodul „Overview“ alle geladenen 4T3 Extensions mit Verlinkung zu deren Dokumentation auf (sofern vorhanden ;) ).

Ist 4T3 Productivity installiert, gibt es die Möglichkeit das Submodul „Report“ auszuwählen und den Systemstatus einzusehen.
Nicht aktuelle Extensions werden gelb markiert, Extensions mit verfügbarem Sicherheitsupdate rot.
Damit festgestellt werden kann, ob es Updates für die Extensions gibt, ist es zwingend notwendig, den Task zum Aktualisieren der Erweiterungsliste einzurichten!

Mit dem Submodul „XLF Editor“ lassen sich die Labels bestehender Extension-Sprachdateien überschreiben oder auch in neue Sprachen übersetzen.
Dazu muss zunächst die gewünschte Sprachdatei ausgewählt werden.
Damit man schneller die gesuchte Datei findet:
Es ist üblich, dass die Inhalte der Datei locallang.xlf im Frontend, die der locallang_mod.xlf oder locallang_be.xlf in Backendmodulen und die der locallang_db.xlf und locallang_csh_#tablename#.xlf in der Bearbeitungsmaske von Datensätzen ausgegeben werden.

Wird eine Datei ausgewählt, erhält man den Inhalt als Tabelle.
In der linken Spalte befinden sich die Keys, in der oberen Zeile die Sprachkürzel.
Die Labels lassen sich einfach wie in einer CSV-Datei bearbeiten.
Per Rechtsklick auf den Tabellenkopf, lassen sich Spalten hinzufügen oder entfernen.
Beim Hinzufügen einer neuen Sprache muss in der ersten Zeile der ISO-639-1-Code der Zielsprache angegeben werden (z. B. „de“ für deutsch).

Beim Speichern werden Sprachdateien gemäß der angegeben Tabelle erzeugt und zum Überschreiben im System registriert.
Beim Löschen werden lediglich die selbst erstellten Dateien wieder entfernt, die Originale der Extensions bleiben erhalten.
Sollte in den Erweiterungseinstellungen ausgewählt sein, dass der Cache nach Änderungen nicht automatisch gelöscht wird, muss der System-Cache geleert werden, damit sie sichtbar werden. Das lässt sich leicht daran erkennen, dass die Buttons in dem Fall nicht mit "& clear cache" benannt sind.
Wurde ein Label im Backend geändert, muss die Seite natürlich einmal neu geladen werden, bevor man die Änderung sieht.

JSON Ausgabe des Systemstatus
https://example.com/index.php?eID=forty3_base&base[method]=getSystemReport&base[authCode]=my-secret-code
Der Authorisierungscode dazu ist der, der in den Erweiterungseinstellungen zuvor definiert wurde.
BaseToolbarItem
Das BaseToolbarItem ist über das 4T3 Icon in der Top Bar aufrufbar.
Es bietet die Grundfunktionalität des Overlays, an die man mit anderen Extensions andocken kann. Ein Beispiel dazu befindet sich in 4T3 SEO, die Anleitung zur Einbindung ist separat.
