Modul-Changelog

Tracking & Statistics

CW Analytics mit Funnel-Einbauhilfe für benannte Aktionen, Report Designer, Datenreihen, Geo-Analytics, Consent und getrennten Demodaten.

Releases22
Erstes Release08.10.2026
Letztes Release10.10.2026
Aktuelle Version0.1.0-alpha10.2.5

Changelog

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

v0.1.0-alpha10.2.5 10.10.2026 Stable

Version 0.1.0-alpha10.2.5

## Diagnose im Browser (ohne Datenschutz-Bypass)

  • `CWStatsDebug.check()` gibt den serverseitigen Erfassungsstatus, Consent-Verfügbarkeit, aktive Script-Einbindung, Browser-Voraussetzungen und den letzten Transportstatus aus. Keine Netzwerkübertragung durch den Aufruf.
  • `await CWStatsDebug.probe()` prüft den POST-Endpunkt nach aktiver Statistik-Einwilligung mit `{}` (absichtlich ungültig); dieser Prüfaufruf legt keinen Tracking-Datensatz an. HTTP 400 zeigt einen erreichten Validierungsfehler, HTTP 204 ist mehrdeutig (Erfassung kann deaktiviert sein), HTTP 405 weist auf eine POST-Sperre hin.
  • `await CWStatsDebug.test()` führt beide Prüfungen aus. `CWStatsDebug.enable()` protokolliert nachfolgende Tracking-Transportergebnisse ohne SID, URL oder Ziele. `CWStatsDebug.disable()` beendet die Ausgabe.
  • Die lokale JS-Diagnose und das Session-Cleanup werden auch bei deaktivierter Erfassung geladen, sofern das Frontend-Dokument den Modulfilter durchläuft. Der eigentliche Tracker wird weiterhin nur bei eingeschalteter Statistik und erteilter Consent-Freigabe ausgeführt.
  • Cache-Busting für `privacy-cleanup.js` ergänzt. Bestehende WAF-Korrektur (`analytics`) aus alpha10.2.4 bleibt enthalten.
  • ## Installation & Prüfung
  • Full Release über CW Module aktualisieren. Danach öffentliche Seite neu laden (ggf. mit deaktiviertem Cache), F12 -> Konsole -> `await CWStatsDebug.test()`. Die Probe erzeugt keinen Seitenaufruf. Für den tatsächlichen Dateneingang zusätzlich einen echten Seitenaufruf im Dashboard bestätigen.
  • Nicht verändert: Storage/SQLite, Consent-Entscheidungen, bestehende Treffer, Core-Dateien, Templates.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha10.2.4 10.10.2026 Stable

Version 0.1.0-alpha10.2.4

## Korrektur: Ereignisempfang nach CW-Core-Update

  • Der Sammler `/cw-statistics/collect` nutzt jetzt den WAF-Scope `analytics` statt `public`.
  • `public` ist absichtlich nur für GET/HEAD zugelassen; der Sammler erwartet jedoch JSON-POST-Anfragen. Dadurch wurden Erfassungsaufrufe zuvor mit HTTP 405 blockiert.
  • Der vorhandene Analytics-WAF-Scope lässt POST zu und behält Request-Prüfung und Rate-Limitierung bei.
  • Keine Änderungen an Consent-Prüfung, Session-Verarbeitung, Statistikdatenbank oder Templates.
  • Wichtig: Die Statistik muss in den Modul-Einstellungen eingeschaltet sein und Besucher müssen der Statistik zugestimmt haben.
  • ## Installation
  • Über CW > Module das vollständige Modul-ZIP installieren/aktualisieren. Die Daten unter `project/storage/tracking-statistics/` bleiben erhalten.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha10.2.3 10.10.2026 Stable

Version 0.1.0-alpha10.2.3

  • Dashboard und Analysen → Interaktionen: Balken (Standard), Säulen, Linie, Kuchen oder Donut mit einem Klick wechseln.
  • Auswahl wird im Browser gespeichert; kein Wechsel der Erfassungslogik oder Rohdaten.
  • Unleserliche große ECharts-Donut-Legende entfernt; stattdessen kompakte, kontrastreiche HTML-Werteliste mit absoluten Zahlen und Prozentanteilen.
  • Die Linienansicht stellt einen Kategorienvergleich dar, keinen Zeitverlauf.
  • Diagramm-Export als PNG bleibt erhalten. Einfache Textwerte als Fallback.
  • CSS für Desktop und kleine Displays angepasst.
  • Tracking, Consent, Demodaten, Funnels, Report Designer, Backup und Monitoring unverändert.
  • ## Prüfung
  • PHP/JavaScript-Syntax und ZIP-Struktur geprüft; Laufzeittest mit echtem ECharts im lokalen `cw.test` empfohlen.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha10.2.2 10.10.2026 Stable

Version 0.1.0-alpha10.2.2

Vollständiges Modulrelease auf Basis von **Alpha 10.2.1**, einschließlich der Funnel-Einbauhilfe aus Alpha 10.1.

  • ## Änderungen
  • Schmale Funnel-Stufen nutzen eine zweizeilige Anordnung: Stufennummer, freies farbiges Icon und Sitzungszahl oben; Titel und Raten lesbar darunter.
  • Auf kleinen Displays verwenden alle Funnel-Stufen die gestapelte Anordnung und die verfügbare Breite.
  • Klarstellung in der visuellen Erläuterung: Eine Mindestbreite dient der Lesbarkeit; die gemessenen Anzahlen und Quoten sind die entscheidenden Werte.
  • Erklärung unter dem Funnel: nur die Hauptüberschrift wird als Flex-Zeile formatiert, normale `strong`-Elemente bleiben Inline-Text.
  • Keine Änderungen an Tracker, Consent, Demo-Generator, Funnels-Berechnung, Datenverwaltung oder CW Monitoring.
  • ## Test
  • `Funnels → Auswertung` mit Demo- oder Echtdaten auf Desktop und Mobil prüfen.
  • Textumbruch besonders bei 3–8 Stufen und langen Titeln kontrollieren.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha10.2.1 10.10.2026 Stable

Version 0.1.0-alpha10.2.1

Vollständiges Modulrelease auf Basis Alpha 10.1 mit den Alpha-10.2-Funnel-Karten.

  • Darstellung der Funnel-Stufen aus Alpha 10.2: helle Karten, tatsächliche Stufenbreiten (mit 44 %-Lesbarkeitsminimum), Drop-off-Badges und ECharts-Tabelle.
  • Keine Icon-Hintergrundboxen mehr. Monochrome Inline-SVGs in der Farbe des linken Stufenrandes; sichtbar größere Icons (43 px Desktop, 37 px Mobil).
  • Akzentfarbe wird bei Bedarf abgedunkelt, bis sie auf Weiß mindestens 4,5:1 Kontrast erreicht. Linker Border, Icon, Stufenindex und Zahl nutzen denselben Akzent.
  • Die vollständige Alpha-10.1-Anleitung „Funnels → Code & Einbau“ einschließlich aller PHP-/Twig-Beispiele, Formularerfolg-Marker und Backend-Navigation ist enthalten.
  • Funnel-Berechnung, Tracking-Consent, echte Statistiken, Demodaten, Backups und Monitoring unverändert.
  • Hinweis: Vollständiger visueller Test erfolgt in der CW-Installation (`cw.test`).
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha10.2 10.10.2026 Stable

Version 0.1.0-alpha10.2

Für dieses Release wurden keine ausführlichen Release Notes gespeichert.

CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha10.1 10.10.2026 Stable

Version 0.1.0-alpha10.1

# CW Tracking & Statistics – Alpha 10.1

  • ## Funktionsumfang
  • Der vorhandene HTML-Marker `data-cw-track="zielkennung"` kann für kontextspezifische Funnel-Schritte verwendet werden; jede Kennung muss vorab als aktives Ziel angelegt sein.
  • Neue Einbauhilfe in **Funnels → Code & Einbau** mit kopierbaren HTML-, PHP/Twig- und JavaScript-Beispielen.
  • Im Funnel Designer pro Schritt dynamisch erzeugte Codebeispiele mit Kopierfunktion.
  • Neuer Erfolgsmarker `data-cw-track-success="zielkennung"` für ausschließlich serverseitig bestätigte Erfolgsausgaben; auch nach verzögerter Consent-Freigabe erkennbar.
  • Hilfe-Kapitel **Funnels → Website-Code anpassen** sowie ausführliches Entwicklerhandbuch `docs/FUNNEL-CODE-EINBAU.md`.
  • Ein Link mit `href="#abschnitt"` und `data-cw-track` wird jetzt als benanntes Ereignis erfasst, ohne die normale Ankernavigation zu beeinträchtigen.
  • Der Tracker erfasst das Anklicken eines normalen `submit`-Buttons **nicht** mehr als Zielereignis; ein echter Formularerfolg erfordert explizites `window.CWStats?.track('zielkennung')` nach Bestätigung.
  • ## Datenschutz und Stabilität
  • Keine neue Datenbank, keine Tracking-Felder und keine Einbindung vor Einwilligung.
  • Automatische Linktypen `tel`, `mailto`, intern, extern, Download bleiben erhalten.
  • Funnel-Reihenfolgen bleiben unverändert, weiterhin eine Sitzung / strikt in Ereignisreihenfolge.
  • CW Forms wird nicht durch ungeprüfte PHP-Eingriffe verändert. Erfolgsaktionen nur bei tatsächlicher Erfolgsbestätigung dokumentiert.
  • Backups, Monitoring, GeoIP, Demo-Generierung und Reports unverändert.
  • ## Tests
  • PHP-Lint, JS-Syntax, Modulmanifest, ZIP-Integrität und dokumentierte Codebeispiele prüfen.
  • In cw.test: Consent erteilen, Ziel anlegen, Link und Button auslösen, Schrittfolge im Funnel überprüfen; Formularfehler darf **keine** Erfolgsconversion auslösen.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha10 10.10.2026 Stable

Version 0.1.0-alpha10

## Neue Funktionen

  • Eigenständiger Hauptbereich **Funnels** mit Unteransichten Übersicht, Designer und Auswertung.
  • Drei vorgefertigte Ideen: Kontakt, Telefon, Download sowie einfacher Funnel; Vorlagen vollständig anpassbar.
  • Frei kombinierbare zwei bis acht Schritte: exakter Seitenpfad, Ereignisart oder vorhandene Tracking-Zielkennung.
  • Reihenfolge, Namen, CI-Farben und Piktogramme einstellbar; Live-Vorschau, Duplizieren und bestätigtes Löschen.
  • Visualisierung als farbiger Marketing-Trichter sowie exakte Balkengrafik (Apache ECharts) und Zahlen-Tabelle.
  • **Korrekte Reihenfolgen-Auswertung innerhalb derselben Session**, keine Verwechslung mit globalen Klicksummen.
  • Volle Time Ranges Foundation und Demo-/Echt-Daten-Umschaltung. Kein anderer Tracking-Endpunkt.
  • Getrennte Konfigurationsdateien unter `project/storage/tracking-statistics/funnels` (nicht Teil von reinen SQLite-Backups).
  • Hilfe und Manifest erweitert.
  • ## Grenzen und Datenschutz
  • Maximal 300.000 Ereignisse pro Abfrage, sonst Hinweis zur Zeitraum-Eingrenzung.
  • Der Sitzungsbezug gilt nur innerhalb erfasster, einwilligungsbasierter Sitzungen und des ausgewählten Zeitraums. Sitzungen werden **nicht** geräte- oder zeitraumübergreifend verbunden.
  • Telefonklicks sind keine Anrufe, Downloadklicks keine vollständigen Transfers; Formularabschluss erfordert ein wirkliches Ereignis.
  • Es wird **keine** neue Datenerfassung, kein Profiling und keine Veränderung an Consent, Monitoring oder Core-Tracking eingeführt.
  • Vorlagen enthalten nur Schritte und Einstellungen. Kein Import von historischen Core-Aggregaten in Funnels.
  • ## Installation
  • Vollständiges Modulupdate über CW installieren, aufbauend auf `0.1.0-alpha9`.
  • Erst eine Funnel-Vorlage erzeugen und deren Seitenpfade/Tracking-Zielkennungen anpassen.
  • Für den ersten Test drei Monate Demodaten in **Daten → Demodaten** erzeugen und unter **Funnels → Auswertung** prüfen.
  • Öffnen, Bearbeiten, Duplizieren und Löschen mit Administratorrechten testen.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha9 10.10.2026 Stable

Version 0.1.0-alpha9

## Report Designer – erster Release

  • Eigener Hauptbereich **Berichte**; keine überladene Dashboardseite.
  • Drei Startvorlagen: Monatsbericht, Kurzbericht, Detaillierter Bericht.
  • Dreispaltiger Designer: Inhaltsabschnitte, A4-Vorschau, Einstellungen.
  • Kapitel wählen und sortieren; Deckblatt, Titel, Kunde, CI-Farben, A4 hoch/quer und Abschlusstext.
  • Vorlagen speichern, öffnen, duplizieren und mit Bestätigung löschen.
  • Alle Werte basieren auf den vorhandenen Analyseabfragen. Keine neuen Erfassungsdaten oder Demo-Mischung.
  • Eigene Druckansicht, Browser-Druckdialog zum Speichern als PDF; keine serverseitige PDF-Bibliothek.
  • Interaktive ECharts-Vorschau im Designer mit Zoom und Legende; Druckdiagramme als vektorbasiertes SVG, unabhängig von externen Script-CDNs.
  • Moduldokumentation ergänzt; Manifest aktualisiert.
  • ## Grenzen der ersten Alpha
  • Das Drucklayout ist für den Browserdruck entwickelt; seitenexaktes, pixelgenaues Drag-and-Drop und serverseitige PDF-Erzeugung folgen später.
  • Zeitgesteuerter E-Mail-Versand ist noch nicht enthalten. Der Logo-Upload ist auf PNG/JPG/WebP bis 200 KB begrenzt.
  • Berichtsvorlagen werden als JSON unter `project/storage/tracking-statistics/reports` gesichert. SQLite-Backups der Statistik sichern diesen Ordner nicht; ein vollständiges Projektbackup ist hierfür erforderlich.
  • Einzelne Berichtswerte verändern sich, wenn der Bericht mit einem rollierenden Zeitraum später erneut geöffnet wird. Das ist beabsichtigt.
  • CSV/Excel-Exporte bleiben auf der Datenreihen-Seite; der Report Designer stellt zunächst die A4-Ausgabe bereit.
  • ## Sicherheits- und Kompatibilitätszusagen
  • `tracking.php`, `tracker.js`, `demo-data.php`, `data-management.php`, `geo.php` und die Monitoring-Schnittstelle bleiben bytegenau gegenüber Alpha 8.2 unverändert.
  • Berichtsvorlagen enthalten keine IP- oder Session-Hashes; der Speicher ist gegen Direktzugriff geschützt.
  • Schreibende Aktionen: Administratorprüfung und CSRF-Token; Bericht-IDs strikt validiert; Ausgabe escaped.
  • Keinerlei Änderungen an Core-Tracking, Consent oder Monitoring.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha8.2 09.10.2026 Stable

Version 0.1.0-alpha8.2

## Interaktiver Gesamtverlauf und Datenreihen

  • Dashboard erhält eine gemeinsame ECharts-Zeitreihe für Sitzungen, Seitenaufrufe, Interaktionen, Conversions und die dokumentierten Klickarten.
  • Diagramm-Gruppen: Besucher, Interaktionen, Alle. Grafiktyp umschaltbar: Linie, Fläche, Balken. ECharts-Legende, Zoom, Zurücksetzen und PNG-Export bleiben verfügbar.
  • Eigene Analyse-Unterseite **Datenreihen**, ohne die Dashboard-Hauptseite mit einer langen Tabelle zu überladen.
  • Lesbare, sortierbare Tabelle mit Spaltenauswahl, leeren Intervallen, Seitengröße und Navigation.
  • CSV-Export aller gefilterten Intervalle und der ausgewählten Spalten, UTF-8 mit BOM und Semikolon-Trennung.
  • Browser-Druck/PDF-Ansicht A4 quer mit wiederholten Tabellenüberschriften. Für einen unabhängig gestalteten PDF-Report ist weiterhin der Reportdesigner vorgesehen.
  • Einheitlicher Zeitraumfilter über die vorhandene CW Time Ranges Foundation; Demo/Real-Umschaltung funktioniert auch in Datenreihen.
  • Neue, begrenzte Aggregatabfrage in `src/data-series.php`. Keine Speicherung zusätzlicher Besucherkennungen und keine Datenbankmigration.
  • Tracking-Engine, Consent, Monitoring, Sicherungen und Lösch-/Restorefunktionen sind unverändert.
  • ## Datendefinitionen
  • Sitzungen: unterschiedliche Sitzungsschlüssel mit einem Seitenaufruf je Zeitintervall. Intervalldaten **nicht** zu einer Gesamt-Sitzungszahl aufsummieren.
  • Conversions: Ereignisse an als Conversion markierten Zielen.
  • Es gibt ohne verlässliche Kennungen keine angeblich eindeutigen/neuen/wiederkehrenden Personen und ohne explizite Erfolgsmeldung keine zuverlässige Anzahl abgeschickter Formulare.
  • Die Zeitachse und CSV-Intervallbezeichnungen sind UTC, wie die übrigen Analysezeitreihen.
  • Bei fehlendem CDN-Zugriff auf ECharts bleiben Wertetabellen und Kennzahlen nutzbar.
  • ## Installation
  • Vollständiges Modulupdate über die CW-Modulverwaltung einspielen; danach Dashboard und Analysen → Datenreihen öffnen. Vorhandene Alpha-8.1.1-Daten werden nicht verändert. Demo-Daten, falls vorhanden, bleiben getrennt.
  • ## Testhinweise
  • PHP-/JS-Syntax, Manifest, unveränderte Kernfunktionen, SQLite-Aggregatlogik und ZIP-Inhalt prüfen. Echtbetrieb mit `cw.test` weiterhin gesondert testen, besonders bei aktivem Demo-Modus und großen Zeiträumen.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha8.1.1 09.10.2026 Stable

Version 0.1.0-alpha8.1.1

## Demo Data Generator · Windows-/Laragon-Korrektur

  • Offene PDO-Statements werden vor der Veröffentlichung der fertig generierten Demo-SQLite-Datei explizit freigegeben. Das verhindert insbesondere unter Windows eine Dateisperre beim Umbenennen.
  • Fehlgeschlagene Dateiumbenennungen liefern eine verständliche Administrator-Meldung; die tatsächliche Windows-/PHP-Warnung wird im PHP-Fehlerprotokoll protokolliert.
  • Der Demo-Speicher wird auf Schreibbarkeit überprüft; bei Fehlern bleibt der vorherige Bestand erhalten, soweit der Dateisystem-Rollback möglich ist.
  • Keine Änderung an echtem Tracking, Consent, Monitoring, Datenmigration oder Backups.
  • ### Installation
  • Vollständiges Modul als Update von Alpha 8.1 über die CW-Modulverwaltung installieren. Unter **Daten → Demodaten** zuerst mit einem Monat testen. Danach 3, 6 oder 12 Monate wählen.
  • ### Grenzen der Tests
  • PHP-Syntax und Release-Integrität wurden geprüft. Die hiesige PHP-Testumgebung enthält kein PDO_SQLITE; der End-to-End-Test unter Windows/Laragon muss in `cw.test` durchgeführt werden.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha8.1 09.10.2026 Stable

Version 0.1.0-alpha8.1

## Neu: Daten → Demodaten

  • Demo Data Generator für **1, 3, 6 oder 12 Monate**, als rollierender Zeitraum bis zum heutigen UTC-Tag.
  • Erstellt isolierte, synthetische SQLite-Daten für Seitenaufrufe, Sessions, Geräte, interne/externe Links, Telefon, E-Mail, Downloadklicks, eigene Ziele/Banner, Conversions und lokale Länder-/Regions-/Städteverteilung.
  • Realistische Schwankungen nach Wochentag, Kampagnenspitzen und variable Sitzungs-/Interaktionszahlen. **Die Daten sind vollständig erfunden**, nicht von realen Besuchern abgeleitet.
  • Testmodus-Umschalter in allen Auswertungsseiten mit deutlich sichtbarer Kennzeichnung; pro Backend-Sitzung steuerbar.
  • Generieren ersetzt nur den bisherigen Testbestand. Löschen erfordert die Eingabe **DEMODATEN LÖSCHEN** und entfernt nur `project/storage/tracking-statistics/demo/demo.sqlite` (samt eventuellen temporären SQLite-Dateien).
  • Analyse- und Standortabfragen nutzen je nach Backend-Modus die echte Datenbank oder die isolierte Demo-Datenbank. Im Demomodus wird die Verwaltung echter Ziele gesperrt.
  • Vollständig eigenständige Unterseite, Menü-Kachel, Icons, Dokumentationskapitel.
  • ## Sicherheitsgrenzen
  • Der Frontend-Collector (`src/tracking.php`) und sein Tracking-Skript sind **unverändert** und arbeiten immer ausschließlich mit der echten Datenbank.
  • Consent & Privacy und der Monitoring-Export bleiben **unverändert**. CW Monitoring sieht niemals Demodaten.
  • Migration des alten Core-Trackings, echte Backup-/Restore-Aktionen und Reset lesen bzw. verändern niemals den Demo-Bestand.
  • Der Testbestand ist nicht Bestandteil der normalen Backups der echten `statistics.sqlite`.
  • Erzeugung/Löschung erfordert Systemadministrationsrechte, POST + CSRF und für Löschen eine ausgeschriebene Bestätigung.
  • Datenbank-Erstellung verwendet eine temporäre Datei und ersetzt den Demo-Bestand erst nach vollständiger Erzeugung und Integritätsprüfung.
  • Es werden keine IP-Adressen, echten Nutzer-IDs, Telefonnummern oder E-Mail-Adressen im Demobestand verwendet.
  • ## Installation
  • Das vollständige ZIP als Modulupdate über die CW-Modulverwaltung installieren. Danach unter **Daten → Demodaten** zunächst 1 oder 3 Monate erzeugen, Testmodus und alle Analyse-Tabs prüfen und danach auf **Echte Daten** umschalten. Die CW Time Ranges Foundation 1.0.4 und das aktive `consent-privacy` bleiben vorausgesetzt.
  • *Tests:** Syntax und Paketintegrität sowie Struktur-/SQL-Prüfungen sind automatisierbar. Ein vollständiger PHP-SQLite-Laufzeit- und CW-Browsertest muss in der lokalen `cw.test`-Installation erfolgen.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha8 09.10.2026 Stable

Version 0.1.0-alpha8

  • *Basis:** vollständiges Alpha-7.2-Modulrelease, keine Core-Änderung.
  • ## Neue Funktionen
  • **Analysen → Standorte:** Land, Region, Stadt, bekannte und unbekannte Sitzungen; ECharts-Donut und barrierearme Tabellen.
  • **Daten → Geo-Daten:** explizite Erfassungsstufe (Aus / Land / Region / Stadt), Status der bereits vorhandenen lokalen CW-GeoLite2-Datenbank.
  • Länder werden pro Sitzung gezählt, nicht pro Klick und nicht pro Person; historische Core-Länderwerte bleiben davon getrennt.
  • Standortzuordnung serverseitig über MaxMind MMDB nur nach Statistik-Consent. Keine IP-Adresse im Tracking-Speicher, keine Anfrage an externe GeoIP-Dienste, keine Übernahme fremder `X-Forwarded-For`-Header.
  • Neue Tabelle `geo_sessions` (additiv, alte Ereignisse bleiben bestehen); Eintrag nur nach einem Seitenaufruf und nur, wenn die Erfassungsstufe bewusst aktiviert wurde.
  • Backup & Restore: Geo-Sitzungen werden ab Alpha 8 mitgesichert. Ältere Alpha-7-Sicherungen ohne Geo-Tabelle bleiben wiederherstellbar; bei ihrer Wiederherstellung werden Geo-Sitzungen geleert. Vor Restore bleibt der Sicherheits-Snapshot obligatorisch.
  • Statistik-Reset, Vollreset und Retention-Bereinigung entfernen Standortzuordnungen zuverlässig.
  • ## Grenzen
  • Standortwerte sind ungenau und abhängig von der lokalen GeoIP-Datenbank. Bereits erfasste Sitzungen werden nachträglich nicht geolokalisiert.
  • Standardmäßig **Aus**. Genauere Ortsangaben sollten nur bei nachgewiesenem Bedarf und entsprechendem Datenschutzkonzept aktiv sein.
  • Bei Reverse Proxy ohne vertrauenswürdige Serverkonfiguration wird nur die Server-IP betrachtet und gegebenenfalls „Unbekannt“ erfasst; unbestätigte Proxy-Header werden bewusst ignoriert.
  • Ein bestehender CW-Monitoring-Vertrag v1 bleibt unverändert und enthält keine Geo-Daten.
  • Der geplante Reportdesigner, Funnels, Langzeitarchive und geografische Karten sind **nicht** Bestandteil dieser Alpha.
  • ## Installation
  • Über die CW-Modulverwaltung das vollständige Alpha-8-ZIP installieren. Kein manuelles Ersetzen von Core-Dateien. Nach dem Update Analysen → Standorte und Daten → Geo-Daten aufrufen. Vor ersten Änderungen ein Backup erstellen. Standortstufe bewusst wählen. Änderungen niemals unmittelbar auf einer produktiven Installation ungetestet freigeben.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha7.1 09.10.2026 Stable

Version 0.1.0-alpha7.1

## Sicherungen löschen

  • In **Daten → Sicherungen** kann eine gespeicherte Sicherung jetzt gezielt gelöscht werden.
  • Die Aktion öffnet ein eigenes CW-Bestätigungsmodal mit dem konkreten Dateinamen. Bestätigung durch Eingabe `LÖSCHEN` und Aktivierung der Sicherheitscheckbox erforderlich.
  • Die Löschaktion ist auf Administratoren beschränkt und erfordert den vorhandenen CSRF-Schutz.
  • Serverseitig sind nur lokal erzeugte Snapshots mit exakt passendem Dateinamen, gültigem Manifest und passender SHA-256-Prüfsumme löschbar.
  • SQLite-Snapshot und zugehöriges JSON-Prüfmanifest werden entfernt. Die aktive Trackingdatenbank, die alte Core-Statistik und andere Snapshots werden nicht verändert.
  • Die neue Funktion ist auch in der Modulhilfe dokumentiert.
  • ## Update
  • Vollständiges Modulrelease auf Grundlage von `0.1.0-alpha7`; bestehenden Modulstand über die CW-Modulverwaltung aktualisieren. Weder Datenbank-Schema noch Tracking-, Consent- oder Monitoring-API wurden verändert.
  • *Wichtig:** Ein gelöschtes Backup kann nicht wiederhergestellt werden. Eine Kopie wichtiger Sicherungen vorher extern aufbewahren.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha7 09.10.2026 Stable

Version 0.1.0-alpha7

## Neue Funktionen

  • Eigenständiger Menübereich **Daten** mit sieben Unterseiten: Überblick, Migration, Historie, Sicherungen, Wiederherstellen, Datenprüfung, Zurücksetzen.
  • Historische Tageswerte und Länder können in einer eigenen ECharts-Archivansicht betrachtet werden, ohne sie mit neuen Sitzungen zu vermischen.
  • Historisches Core-Tracking (`storage/analytics.sqlite`) kann ausschließlich als getrennte Tages- und Länderaggregate übernommen werden. Bots und Testereignisse ausgeschlossen.
  • Konsistente SQLite-Sicherungen mit Prüfsumme, geschütztem Speicher und Download im Administratorbereich.
  • Wiederherstellung nach SHA-256-, Integritäts- und Schemavergleich sowie automatischem Sicherheitsbackup.
  • Reset nur der Statistikwerte oder kompletter Modul-Reset mit ausdrücklicher Bestätigung und automatisch pausierter Erfassung.
  • Handbuchkapitel zur Datenpflege.
  • ## Bewusst unverändert
  • `assets/tracker.js`, `src/tracking.php` und `bootstrap.php` bleiben inhaltlich unverändert, ebenso die bisherige Consent-Einbindung.
  • Die lokale Monitoring-Exportfunktion und das Datenmodell der neuen Hit-Tabelle bleiben unverändert.
  • Kein öffentlicher Datenverwaltungs-Endpunkt, kein Import personenbezogener Rohereignisse und keine Änderung an der alten Core-Datenbank.
  • **Funnels, Geo-Analytics und Reportdesigner** folgen in separaten Releases.
  • ## Schutz und Grenzen
  • `src/data-management.php` wird nur von den authentifizierten Administratorseiten geladen; schreibende Aktionen nutzen CSRF-Token und Bestätigungstext.
  • Automatische Backups erfordern eine SQLite-Version mit `VACUUM INTO` (SQLite ≥ 3.27) und ausreichenden Speicherplatz.
  • Die Sicherungen liegen unter `project/storage/tracking-statistics/snapshots/` mit Verzeichnissperre.
  • Lokale Restore-Funktion kann nur Snapshots zurückspielen, die CW selbst erstellt hat und deren Manifest-Prüfsumme unverändert ist.
  • Historische Tages-Sitzungen werden **nicht** zu neuen Sitzungen oder eindeutigen Personen addiert. Die getrennte Darstellung schützt vor irreführenden Summen.
  • Eine vollständige Funktionsprüfung unter realem `cw.test` inklusive PDO-SQLite ist vor Produktivbetrieb erforderlich.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha6 09.10.2026 Stable

Version 0.1.0-alpha6

## Das ist neu

  • CW-CI-blaue, kompaktere Analytics-Navigation mit Piktogrammen und gut sichtbaren aktiven Bereichen.
  • Kennzahlenkarten mit sechs definierten Metriken; Änderung nur, wenn eine mathematisch gültige Vorperiode existiert.
  • ECharts 6.1.0 wie in CW Core: zeitliche Linien-/Flächen-/Balkendiagramme mit Legende, Zoom und PNG-Export.
  • Donuts für Geräteklassen und Interaktionsarten sowie Balken-Ranking für Top-Seiten.
  • Alle alten Detailtabellen, Tracking-Ziele, Ereignisse, Monitoring-Export, Consent-Anbindung und Hilfeseiten bleiben erhalten.
  • Dokumentation für Dashboard, Diagramme und ihre Grenzen erweitert.
  • ## Voraussetzungen
  • CW 3.0.0-beta11.23 (Entwicklungsstand), PHP >= 8.3, PDO SQLite, Time Ranges Foundation 1.0.4 im Core, `consent-privacy` installiert und aktiv. Die Charts verwenden die bereits im Core eingesetzte ECharts-CDN-Adresse (jsDelivr, Version 6.1.0); sonst bleibt ein Fallback-Text sichtbar.
  • ## Installation / Migration
  • Vollständiges **Modulupdate** über die CW-Modulverwaltung einspielen. Keine neuen Tabellen oder Migrationsschritte. Vorhandene Daten und Einstellungen bleiben unangetastet. Das alte Core-Tracking bleibt bis zur ausdrücklichen späteren Umstellung bestehen; keine parallele Erfassung.
  • ## Nachprüfung in cw.test
  • 1. Modulupdate installieren und Dashboard öffnen.
  • 2. Zeiträume/Profi-Modus wählen und zwischen den Analyse-Tabs wechseln.
  • 3. Linie/Fläche/Balken, Legendenauswahl, Zoom und Bildexport testen.
  • 4. Besucher-Geräteverteilung, Inhalte und Interaktionen mit realen Werten vergleichen.
  • 5. Consent und Monitoring-Exportstatus unverändert prüfen.
  • 6. Browser offline simulieren: Charts dürfen ausfallen, Kennzahlen und Tabellen nicht.
  • Keine `.htaccess`, Datenbanken oder Runtime-Dateien im Paket.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha5 09.10.2026 Stable

Version 0.1.0-alpha5

## Neue Funktionen

  • CW Time Ranges Foundation v1.0.2 in die sechs Analysebereiche integriert; Zeitraum beim Wechsel zwischen Bereichen erhalten.
  • Neue Untertabs **Besucher** und **Trends**, getrennt von **Inhalte**, **Interaktionen** und **Ziele & Banner**.
  • Neu gestaltetes Dashboard mit sechs Kennzahlen, realen Trends und farbig unterscheidbaren Grafiken.
  • Trends: Flächen-, Linien- und Balkenansicht sowie zugängliche Tabelle mit den Zahlenwerten.
  • Geräte-Donut mit exakter Beschreibung des Nenners (Seitenaufrufe).
  • Optionaler Vorperiodenvergleich; UTC-Fenster werden inklusive Start / exklusive Ende gefiltert.
  • Hilfekapitel für Zeitraumfilter, Besucher und Trends.
  • ## Sicherheit, Migration und Kompatibilität
  • Modulrelease auf vollständiger **Alpha 4.1**-Basis; keine Datenschemaänderung oder Tracking-Verhaltensänderung.
  • Consent & Privacy (`consent-privacy`) bleibt erforderliche Abhängigkeit.
  • Keine neuen öffentlichen API-Routen; Monitoring-Export v1 unverändert und weiterhin standardmäßig aus.
  • Zeitfilter validiert über die zentrale CW-Foundation; SQL verwendet gebundene Parameter und feste Dimensionen.
  • Leere Daten und fehlende Vergleichswerte werden angezeigt und nicht durch Demodaten ersetzt.
  • ## Installation
  • 1. CW Core Time Ranges Foundation 1.0.2 vorher installieren (im CW-System-Menü prüfen).
  • 2. Alpha 5 als komplettes Modul-ZIP über die Modulverwaltung aktualisieren.
  • 3. Backend: Dashboard, Besucher, Trends, Inhalte, Interaktionen und Ziele & Banner durchklicken; einen Zeitraum im Profi-Modus auswählen.
  • 4. Datum/Uhrzeit und Vorperiodenvergleich prüfen, anschließend Einstellungen, Datenschutz, Monitoring und Handbuch öffnen.
  • 5. Bestehende Trackingdaten im Projekt speichern/backupen; `.htaccess` und Runtime sind **nicht** Bestandteil dieses Modulreleases.
  • Diese Alpha benötigt noch einen visuellen Funktionstest in `cw.test`. Nicht ungeprüft produktiv einsetzen.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha4.1 09.10.2026 Stable

Version 0.1.0-alpha4.1

## Korrektur: Handbuch-Navigation im Backend

  • Kapitelwechsel und Kapitelsuche innerhalb `admin/module.php?module=tracking-statistics&page=help` funktionieren mit `&chapter=...`.
  • Die Help Foundation 1.0.1 muss zuvor im CW Core installiert werden.
  • Oeffentliches Modulhandbuch behaelt seine bisherige `?page=...`-Navigation.
  • Keine Aenderung an Tracking, Consent, SQLite oder Statistiken.
  • ## Installation
  • 1. CW Help Foundation 1.0.1 Core-Patch entpacken.
  • 2. Komplettes Tracking-Modul als Update auf 0.1.0-alpha4.1 installieren.
  • 3. Backend-Handbuch und oeffentliches Modulhandbuch pruefen.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha4 09.10.2026 Stable

Version 0.1.0-alpha4

  • *Schwerpunkt:** Vollständige Umstellung auf CW Help Foundation.
  • Ein gemeinsamer, kapitelbasierter Inhalt für die öffentliche Modulhilfe und die Backend-Hilfe.
  • Acht ausführliche Kapitel mit Unterabschnitten, Suche, mobiler Navigation, Kapitelwechsel und Screenshot-Platzhaltern.
  • Design und Bedienlogik direkt von der bestehenden CW-Systemdokumentation `/doku/`.
  • Die Foundation muss zuvor über das separate CW-Core-Paket installiert sein.
  • **Unverändert:** Tracker, Consent-Verbindung, SQLite-Daten, Statistiken und Monitoring-API.
  • Keine `.htaccess` im Modulrelease, keine Runtime-Daten.
  • Nach dem Update bitte `/modules/help/tracking-statistics/` und die Backend-Seite „Handbuch“ prüfen.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha3 09.10.2026 Stable

Version 0.1.0-alpha3

## Neu

  • Eigenständiger Bereich **Monitoring** mit expliziter, standardmäßig ausgeschalteter Exportfreigabe.
  • Interner, versionierter PHP-Aggregat-Export `cw_stats_monitoring_export_v1` mit strikter UTC-Zeitraumvalidierung, maximal 60 Tagen/14 Tagen Stundenwerten.
  • Kennzahlen: Seitenaufrufe, Sitzungen, Interaktionen, als Conversion markierte Zielklicks; tägliche und stündliche Zeitreihen, Ereignisarten.
  • Datenschutz: keine Sessionhashes, IPs, Einzelereignisse, Zielnamen, Seitentitel, URLs/Dateinamen oder User-Agents im Export.
  • Korrekte Kennzeichnung: unique/new/returning visitors nicht ermittelbar (`null`), keine fiktive Personenzählung.
  • Status-/Vorschauseite im Backend und ergänztes Handbuch + eigenes Schnittstellendokument.
  • ## Unverändert
  • Tracking-Skript, Consent-Integration, bestehende Alpha-1/Alpha-2-Daten, Zielverwaltung, Ereigniserfassung und alter CW-Core-Tracker.
  • **CW Monitoring 0.1.0-alpha17.5 wird NICHT verändert und erhält NOCH KEINE neuen Statistiken.** Ein späteres Agent-Release muss nach HMAC-Prüfung die lokale PHP-Funktion aufrufen.
  • Die CW Time Ranges Foundation ist ein eigenes Core-Projekt und wird hier nicht vorweggenommen.
  • ## Installation und Prüfung
  • Als vollständiges Modul-Update über CW installieren, dann **Verwalten → Monitoring** öffnen. Erst wenn die Freigabe bewusst gesetzt wurde, liefert die interne Funktion Zahlen. Die Freigabe startet allein keine zentrale Datenübertragung. Nach der Aktualisierung einen lokalen CW-Laufzeittest durchführen.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha2 09.10.2026 Stable

Version 0.1.0-alpha2

  • *Status:** Alpha / Entwicklungsrelease für `cw.test`
  • ## Neue Funktionen
  • Eigener Bereich **Interaktionen** mit einzeln filterbaren Klickarten und Zielen
  • Eigener Bereich **Ziele & Banner** mit Formular für Namen, Kennung, Typ, Gruppe, Conversion-Merkmal, Aktivierung und Archivierung
  • Filter- und Detailstatistiken nach internen Pfaden, externen Domains und Download-Links
  • Neue **Diagnose** mit Status für Consent, altes Core-Tracking, Modulaktivierung, SQLite, Schema und Tracker-Datei
  • Granulare Ein/Aus-Schalter je Klickart
  • Anpassungen an den Navigationsgruppen „Auswerten“ und „Verwalten“, helles Admin-Design
  • Aktualisiertes Handbuch und technische Anleitung
  • ## Migration/Kompatibilität
  • Alpha-1-Daten bleiben bei Modulaktualisierung erhalten. `target` und `goal_key` werden ergänzt; `goals` wird angelegt.
  • Datenerfassung bleibt auf der vorhandenen Einstellung (Default bei Neuinstallation: deaktiviert).
  • Tracker sendet ab Alpha 2 same-origin JSON-POST. Browser-Caches beachten (geänderter Asset-Versionparameter).
  • Das alte Core-Tracking wird weder verändert noch deinstalliert. Bei aktivem Core-Tracking bleibt die neue Sammlung gesperrt.
  • Keine neuen Core-Hooks oder erfundenen Consent-Schnittstellen verwendet.
  • ## Grenzen / Folgeversionen
  • Downloads: Nur Klicks, noch keine durch CW Downloads bestätigte Auslieferung
  • Benutzerdefinierte Ziele: Klick-Tracking und manuell auslösbare Aktionen; keine automatische native Forms-Integration
  • Time Ranges Foundation, detaillierte Besucheranalyse, Funnels, Datenmigration und Berichte folgen in separaten Releases
  • Erfasste Seitenpfade sollten keine personenbezogenen IDs enthalten; Betreiber muss eigene URLs prüfen
  • ## Tests vor Produktion
  • Installation und Update auf cw.test inklusive PDO-SQLite-Migration
  • Consent ablehnen, akzeptieren und widerrufen; Netzwerkverkehr und keine Doppelzählung prüfen
  • `data-cw-track` an internen, externen, `tel:`, `mailto:`-Links und Buttons testen
  • Modul-Deaktivierung und Unterseiten navigation prüfen
  • Zugriffsrechte für Schreibaktionen testen
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0
v0.1.0-alpha1 08.10.2026 Stable

Version 0.1.0-alpha1

# 0.1.0-alpha1 — First Release

  • Eigenständiges Modul mit modernem, hellem CW-Backend, Icon und Teaser.
  • Dashboard mit tatsächlichen Kennzahlen und Tagesverlauf statt Demo-Zahlen.
  • Seiten & Ereignisse, Datenschutzcenter, Einstellungen, öffentliche und Backend-Hilfe.
  • Abhängigkeit von aktiviertem `consent-privacy`; Diensteregistrierung.
  • Automatische JS-Einbindung über CW Frontend-Dokumentpipeline, verzögert bis Einwilligung.
  • Serverseitige Consent-Prüfung je Zählanfrage und lokales Session-Cleanup nach Widerruf.
  • Erfassung von Seitenaufrufen und gezählten Kontakt-Klicks ohne Speicherung von IP-Adressen.
  • SQLite unter project/storage, automatische opportunistische Datenbereinigung.
  • Schutz vor Doppelzählung bei aktivem Legacy-Core-Tracking.
  • Erfassung nach Installation standardmäßig ausgeschaltet.
  • ## Nicht enthalten
  • Time Ranges Foundation im Core, detaillierte Funnels, SEO-UTMs, Import der Legacy-Statistik, automatische E-Mail-Berichte, individuelle IP-Profile, Geolokalisierung und Report-Exporte. Diese sind ausdrücklich nicht als Alpha-1-Funktionen dargestellt.
  • ## Testhinweis
  • Installation / Aktivierung und End-to-End-Erfassung lokal in `cw.test` prüfen; es wurden keine Änderungen an einer laufenden CW-Installation vorgenommen.
CW ≥ 3.0.0-beta11.1 PHP ≥ 8.3.0