Kategorien
FanPress CM Scripting

FanPress CM 5.0 veröffentlicht

Am Montag habe ich nach rund 1 1/2 Jahren Version 5 von FanPress CM veröffentlicht.

FanPress CM 5.0 setzt aktuell noch PHP 7.2 voraus. Direkte Updates sind nur ab FanPress CM 4.5

Diese komplett neue Version umfasst die größten Änderungen an der Benutzeroberfläche seit 2011 und eine Vielzahl an Änderungen und Neuerungen, welche Ihr unter „weiterlesen“ findet.

Die umfassendste Änderung ist die Nutzung von Bootstrap, welches komplett das bislang verwendet jQuery UI ersetzt.

Die Größe von Thumbnail wird ab sofort anhand einer einzelnen Einstellung festgelegt und anhand einer Vorschau angezeigt.

Die gesonderte Auswahl für Breite und Höhe entfällt.

Der Dateimanager wurde optisch überarbeitet. Dies betrifft sowohl die Darstellungen der Listen als auch die Upload-Funktion.

Diese erscheint nun nicht mehr in einem gesonderten Tab, sondern in einem Overlay an der rechten Seite.

Werden Grafiken im Dateimanager oder TinyMCE bearbeitet, kann jetzt Einfluss auf den Dateinamen genommen werden.

Werden Bilder als Galerie in TinyMCE eingefügt, so werden die Bilder nun als Vorschau angezeigt.

Wird ein Bild gelöscht, wird auch die Galerie-Angabe aktualisiert.

Startbildschirm-Container besitzen nun eine Fußzeile, welche mit Links/Buttons erweitert werden können.

Wurde die Twitter-Anbindung eingerichtet, werden im Startbildschirm nun die 20 letzten Beiträge des entsprechenden Accounts angezeigt.

Checkboxen werden nun als Schalter dargestellt.

Dies führt zu einer besseren Nutzbarkeit auf mobilen Endgeräten, kann in eigenen Views aber bei Bedarf deaktiviert werden.

Die Systemprüfung wurde optisch aufgeräumt und um zusätzliche Punkte ergänzt.

Unter anderem wird geprüft, ob die PHP-Erweiterung „OPcache“ aktiv ist. Diese ist jedoch optional.

Warum auf Bootstrap?

jQuery Ui wurde zwischenzeitlich nicht mehr weiterentwickelt. Wie Ende 2021 nochmals bestätigt, ist nur noch mit Wartungsreleases zu rechnen, allerdings keine relevante Weiterentwicklung; zum Zeitpunkt der Meldung lief die Umstellung auf Bootstrap schon.

Bootstrap hat sich angeboten, da einerseits die Dataviews/ Listenansichten seit Version 4 bereits auf Bootstrap basiert haben. Zudem sind die Komponenten nicht Pixel-Größen-basiert und somit überwiegend responsiv. Der Ausblick auf die aktuelle Beta von Bootstrap 5.2 ist zudem mit zusätzlichen Optimierungen und einem Darkmode sehr positiv.

Optimierung Eingabemasken

  • An diversen Stellen wurden die Eingabemasken mit zusätzlichen Prüfungen ergänzt. Somit werden Fehleingaben, fehlende Informationen etc. bereits vor dem Speichern vermieden.
  • Die serverseitige Prüfung erfolgt natürlich weiterhin.
  • Diverse Masken wurden zudem im Aufbau vereinheitlicht.

Berechtigungssystem

  • Der alte Berechtigungslayer wurde komplett, nachdem dieser mit Version 4.4 bereits veraltet war.
  • Der Zugriff auf den mit Version 4.5 eingeführten CSV-Import kann nun via Berechtigung gesteuert werden.

Benutzersitzungen

  • Die Option zum Festlegen einer Benutzersitzung wurde entfernt. Standardmäßig wird immer eine Stunde angesetzt, bis die Benutzersession verfällt.
  • Über eine PHP-Konstante kann der Wert bei Bedarf angepasst werden.

Module und Entwicklung

Auch für Module gibt es diverse Neuerungen.

  • Aufgrund des Umstiegs auf Bootstrap sind natürlich Anpassungen an der UI von Erweiterungen notwendig. Werden veraltete Komponenten verwenden, wird eine entsprechende Meldung in der Oberfläche bzw. den Protokollen ausgegeben.
  • Über eine neue Einstellung im „config“-Bereich der „module.yml“ können Module nun einen Ordner im „/data“-Verzeichnis erzeugen lassen. Dies musste bislang manuell erfolgen.
  • Die Möglichkeit einer „configure.php“-View zur Anzeige der Config-Oberfläche eines Moduls wurde entfernt. Hierzu muss eine Datei unter „config/configure.yml“ angelegt werden (Beispiel bei GitHub).
  • Die view-Klasse wurde um diverse neue Funktionen erweitert, u. a. zum direkten Laden vom Dateien aus einer Drittanbieter-Bibliothek bzw. eines Moduls.
  • Die Viewhelper-Objekte wurden um einer Vielzahl neuer Optionen erweitert, um die zusätzlichen Anforderungen bzw. Möglichkeiten von Bootstrap abzubilden. In diesem Rahmen wurden auch verschiedene Einstellungen als Default geladen, welche bislang immer manuell aufgerufen werden mussten.
  • Über den controller-Trait „simpleEditForm“ können schnell einfache Eingabe-Formulare erzeugt werden (Beispiel)
  • Der Update-Prozess wurde vollständig auf die Nutzung von Migrationen umgestellt.
  • Die Drittanbieter-Bibliotheken wurden – soweit möglich – auf die aktuelle Version aktualisiert. TinyMCE bleibt vorerst auf Version 5.10, da mit Version 6 verschiedene Funktionen in die Premium-Version verschoben wurden.
  • Neu ist die Bibliothek „Uppy“, welche in einer der nächsten Versionen jQuery-File-Upload von blueimp ersetzen wird.

Ein vollständiges Changelog findet man bei Interesse auf GitHub.

Share this to the world...