Modul-Changelog

CW Design Studio

Zentrales CW Design Control Center für Template-Konfiguration, Architektur, Composer-basierten Profi-Diff mit jfcherng/php-diff, Dateihistorie, Restore-/Basis-Workflows, Backups und modulare Design-Provider mit CW Editor Foundation. Alpha 5 korrigiert die HTML-Renderer-Integration des Diff Viewers und die Kontraste der Diff-Aktionen.

Releases9
Erstes Release01.09.2026
Letztes Release27.09.2026
Aktuelle Version0.2.0-alpha5

Changelog

Neueste Veröffentlichung zuerst. Die Inhalte werden direkt aus den beim Release gespeicherten Release Notes erzeugt.

v0.2.0-alpha5 27.09.2026 Stable

Version 0.2.0-alpha5

  • Fix: jfcherng/php-diff behält wieder die erforderliche Wrapper-Klasse diff-wrapper.
  • Fix: Side-by-Side und Inline verwenden die tatsächlichen CSS-Klassen von php-diff 7.0 (old/new, change-del/ins/rep).
  • Fix: beide Spalten im Side-by-Side-Renderer erhalten stabile Breiten und Zeilennummern.
  • Fix: Diff-Aktionsbuttons bleiben auch unter CW-Host-Styles kontrastreich.
  • History, Restore und Basis-Workflow unverändert.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.2.0-alpha4 26.09.2026 Stable

Version 0.2.0-alpha4

Hotfix für den Diff Viewer:

  • Kontext-Auswahl 3/10/Alle akzeptiert numerische Array-Keys robust.
  • Diff-Link-Builder normalisiert context konsequent auf String.
  • Behebt TypeError: Argument #3 ($context) must be of type ?string, int given.
  • Aktiver Kontext-Button wird für 3 und 10 wieder korrekt erkannt.
  • Keine Änderungen an History, Restore, Basis-Workflow oder Provider-Schnittstelle.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.2.0-alpha3 26.09.2026 Stable

Version 0.2.0-alpha3

  • Diff Viewer auf jfcherng/php-diff 7.x umgestellt; Eigenbau-Diff wird nicht mehr verwendet.
  • Side-by-Side, Inline und Unified Renderings.
  • Detailstufen: none, line, word, char.
  • Kontext: 3, 10 oder alle Zeilen.
  • Whitespace optional ignorierbar.
  • Änderungsstatistik aus dem JsonText-Renderer der Library.
  • Paketversion im Diff Viewer sichtbar.
  • Buttons/Links kontrastsicher gegen globale Backend-Styles gehärtet.
  • Design-Studio-Hero-Headline explizit weiß.
  • History, Restore und sichere Basis-Rücksetzung unverändert erhalten.
  • Voraussetzung: Composer-Paket jfcherng/php-diff ^7.0 im CW-Root.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.2.0-alpha2 26.09.2026 Stable

Version 0.2.0-alpha2

Neu

  • Eigene, versteckte Diff-Viewer-Route für Basis ↔ Projekt sowie Historie ↔ aktueller Stand.
  • Side-by-Side- und Unified-Diff mit echten Zeilenänderungen auf Myers-Basis.
  • Zeilennummern, Änderungsstatistik, optionaler Zeilenumbruch und Whitespace-Ignorieren.
  • Große unveränderte Bereiche werden kompakt dargestellt und können aufgeklappt werden.
  • Vergleichen öffnet aus der Architekturansicht in einem separaten Browser-Tab.
  • Dateibezogene Historie mit Grund, Zeit, Größe und SHA256-Kurzkennung.
  • Jede automatische Sicherung erhält Metadaten in .cwds-meta.json.
  • Historische Versionen lassen sich mit dem aktuellen Stand vergleichen und wiederherstellen.
  • Wiederherstellen erzeugt vorher automatisch eine weitere Sicherung des aktuellen Standes.
  • „Basis verwenden“ sichert den aktiven Projekt-Override und entfernt ihn anschließend sicher,
  • sodass CW wieder die Basisdatei verwendet.
  • Auch aus der globalen Backup-Übersicht kann nun wiederhergestellt bzw. zur Datei-Historie gesprungen werden.

Sicherheit

  • Restore-Ziele bleiben auf project/ und freigegebene Designbereiche beschränkt.
  • Keine freie Pfadwahl, kein Zugriff auf project/storage, Root/Core oder Secrets.
  • Basis-Reset ist nur möglich, wenn tatsächlich eine Basisdatei existiert.
  • Alle schreibenden Aktionen bleiben an module.design-studio.manage und CSRF gebunden.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.1.0-alpha5 01.09.2026 Stable

Version 0.1.0-alpha5

NEU

  • Zeilenlinien als Editor-Foundation-Feature.
  • Standardzustand: EIN.
  • Schalter unter Ansicht -> Zeilenlinien.
  • Zeilenlinien folgen logischen Codezeilen und respektieren Wrap-Hoehen.

VERBESSERT

  • CSS-Farbmarker deutlich nach links verschoben; keine Kollision mehr mit der vertikalen Scrollbar.
  • Eigene rechte Marker-Gasse mit reserviertem Editor-Innenabstand.
  • Farbmarker bleiben auch bei aktiviertem Zeilenumbruch sichtbar.
  • Marker-Positionen werden bei Wrap anhand der gemessenen Token-Position innerhalb der logischen Zeile berechnet.
  • Repositionierung bei Scroll, Resize, Schriftgroesse sowie Gross-/Vollbild.
  • SICHERHEIT / ARCHITEKTUR
  • Kein zweiter Editor: beide Funktionen registrieren sich als Features der CW Editor Foundation.
  • Keine Server-Konfigurationsdateien im Paket.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.1.0-alpha4 01.09.2026 Stable

Version 0.1.0-alpha4

CSS Color Selector

  • CSS-Dateien zeigen erkannte Farbwerte als klickbare Farbpunkte im rechten Editorbereich.
  • Klick auf einen Farbdot öffnet den CW-Farbwähler.
  • Farbe kann über nativen Farbwähler oder direkt als CSS-Farbwert eingegeben werden.
  • Transparenz kann von 0 bis 100 % eingestellt werden.
  • Unterstützt werden #RGB, #RGBA, #RRGGBB, #RRGGBBAA, rgb()/rgba(), hsl()/hsla() und transparent.
  • Bei transparenten HEX-Farben wird HEX8 geschrieben; rgba()/hsla() behalten den Alpha-Kanal.
  • Zuletzt verwendete Farben werden browserlokal als kleine Palette angeboten.
  • Transparente Farben werden auf Schachbrett-Hintergrund dargestellt.

Architektur

  • Der bestehende CW Editor wird nicht ersetzt.
  • Die Farbfunktion hängt sich über die Feature-Registry der CW Editor Foundation in das CSS-Profil ein.
  • PHP-/HTML-Templates bleiben unverändert ohne Farbdekoration.
  • Bei aktivem Word-Wrap werden Farbdots ausgeblendet, weil die visuelle Zeilenposition dann nicht mehr 1:1 zur Quellzeile passt.
  • Sicherheit / Paket
  • Keine Server-Konfigurationsdateien im Modulpaket.
  • Bestehende Backup-, Rechte-, CSRF- und PHP-Lint-Logik bleibt unverändert.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.1.0-alpha3 01.09.2026 Stable

Version 0.1.0-alpha3

HOTFIX BACKEND-NAVIGATION

  • Standard-CW-Backend-Header wiederhergestellt.
  • admin_nav() wird jetzt ausgegeben statt nur aufgerufen.
  • Aktiver Menüpunkt verwendet $cwModuleNavKey aus admin/module.php.
  • Design Studio läuft wieder innerhalb der normalen .wrap / .admin-shell-header-Struktur.
  • Direkter Aufruf der Modulseite wird wie bei Blog/FAQ blockiert.
  • Editor-Foundation-Integration aus Alpha 2 bleibt erhalten.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.1.0-alpha2 01.09.2026 Stable

Version 0.1.0-alpha2

Schwerpunkt: CW Editor Foundation statt eigenem Textarea-Codeeditor.

  • Neu / geändert:
  • Global-/Theme- und Blog-Dateien werden im zentralen CW Editor Foundation Skin bearbeitet.
  • Keine parallele Codeeditor-Engine im Design Studio.
  • Syntaxhervorhebung für CSS und PHP/HTML über die Foundation-Sprachprofile.
  • Suchen und Ersetzen inklusive Ganzes Wort, Groß-/Kleinschreibung und RegExp.
  • Sprung zu Zeile über Schaltfläche oder Strg+G.
  • Zeilennummern und Zeilenumbruch über das Foundation-Ansichtsmenü.
  • Undo/Redo über die Foundation-History.
  • Foundation-Formatierung, Struktur-/Qualitätsprüfung und Vorschläge.
  • Editor-Theme Auto/Hell/Dunkel und Schriftgrößensteuerung.
  • Normal-, Groß- und Vollbildansicht mit Übernehmen/Abbrechen.
  • Cursor-, Zeichen- und Zeilenstatus.
  • Strg+S speichert die aktuell geöffnete Datei.
  • Sichtbarer Status für ungespeicherte Änderungen und Warnung beim Verlassen.
  • Automatische Design-Studio-Backups und serverseitige PHP-Syntaxprüfung bleiben unverändert aktiv.

Kompatibilität

  • CW >= 3.0.0-beta7
  • PHP >= 8.3

Hinweis

  • Das Modul lädt editor-foundation.css/js, editor-profiles.js und editor-languages.js direkt aus dem CW-Core. Dadurch bleiben Oberfläche und Editorverhalten zentral wartbar.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.1.0-alpha1 01.09.2026 Stable

Version 0.1.0-alpha1

Erster Release des zentralen CW Design Studios.

  • Enthalten:
  • Bereich „Global / Theme“ für project/assets/css/site.css sowie Header-/Footer-Templates.
  • Bereich „Blog“ für project/assets/css/blog.css.
  • Blog-Template-Overrides für post.php, index.php, startpage.php, series.php und archive.php.
  • „Standard als Override übernehmen“ kopiert das Modul-Template updatefest nach project/templates/blog/.
  • „Override entfernen“ schaltet wieder auf den Modulstandard zurück.
  • Automatische Sicherung vor Speichern, Erstellen und Entfernen.
  • PHP-Syntaxprüfung vor dem Speichern via TOKEN_PARSE.
  • Strikte Whitelist: nur explizit freigegebene Design-Dateien sind editierbar.
  • Eigene Berechtigungen zum Ansehen und Verwalten.

Hinweis

  • Alpha 1 schreibt bewusst direkt in die bereits vorhandenen Projektdateien, damit keine zusätzliche Frontend-Loader-Anpassung nötig ist. Weitere Module können später über denselben Provider-Ansatz angebunden werden.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0