- update vendors
- remove vectorface/whip as dependency und use symfony shipped alternative
- add CrawlerDetect library to detect more crawlers
- check ip adress of visitor for bot
- fix in install.php for ip2geo database download
- the addon now uses namespaces, so you have to check for errors after an update, if methods of this addon are used in your own code
- charts now have a darkmode
- plugins are now directly integrated into the main addon
- renamed "Kampagnen" to "Event" to better express what this feature is doing
- removed yrewrite as a dependency
- added statistics for visited pages per session
- added statistics for visitduration
- added statistics for visitors country
- "Seitenaufrufe" now shows http status code
- filter settings are saved between page navigations
- added setting to track only pages with a 200 response code which results in much more accurate statistics
- added a cronjob to automatically remove unused user-hashes. Usefull to comply with the GDPR "Datensparsamkeit" rule
- some visits dont use the users ip any more and instead use a session token
- removed integration for dashboard addon
- page requests coming from users logged into the backend can now be discarded in order not to distort the statistics #104, #93
- update device detector to 6.1.1, also fixes #103
- re-enable client hints after dd-update
- add file based caching for device detector
-
fix deprecation warning in datefilter / #102
-
set domain to "undefined" when rex_yrewrite::getHost() is null / #101
-
entries in pagestats_visitors_per_day were not deleted / #94
-
chart captions are scrollable and should now take less space / #98
-
toolbox for charts can now be hidden (default: hidden). if needed enable manually in addon settings
-
datefilter preset "this year" replaced with "last 12 month" / #100
-
many small ui improvements
-
fix issue with spyc.php
see 2.5
see 2.5
- fix release version number
- update matomo/device-detector from version 4 to version 6
- fixed missing statistics if the "ignore path" feature was used
Dieser Fix behebt leider nur zukünftige Fehler, nicht aber eine existierende fehlerhafte Config.
Dies kann aber schnell mit einem Blick in die Datenbank festgestellt werden:
- in
rex_config
nachstatistics_ignored_paths
suchen - wenn der Text mit
\r\n
oder\n
beginnt diese Zeichen entfernen.
- code refactored (typetints and return-types added)
- fix hash updating if requests appear nearly simultaneously / #89
- fix media plugin
Durch das hinzufügen von return-types und return-types wird nun mindestens eine PHP Version >= 7.4 benötigt.
- charts for visits and visitors are now available in "daily", "monthly" and "yearly" / #86
- new heatmap chart for "visits per day"
- setting "Fasse alle Domains zusammen" which combines all domains into a single chart when detailed distinction is not required
- replaced plotly with echarts (reducing js size from 3,5MB (plotly) to 1MB (echarts))
- code cleanup, some data generation was moved from the statistic pages to classes to make the templates less bloated
- filter_date_helper now uses DateTimeImmutable for more logical handling
- plotly js asset
- setting "statistics_chart_padding_bottom"
- using echarts 5.3.1
- fix sql query for todays count of visits / #85
- code cleanups (für das chart der besucher und aufrufe werden nun nicht mehr JS-variablen mit php generiert)
- fix chart javascript generation (#81, #83)
- pages: domain selector now gets domains from db
- fix js code generation
- statistics can be filtered by domain
- overview for statistics
- sortable lists now sort dates correctly
- fix update script
Dieses Update beinhaltet auch die Änderungen aus den Betas von 2.0.0-beta.11 und 2.0.0-beta.10. In diesesn war allerdings die update.php fehlerhaft, weswegen die Referer-Daten nicht korrekt migriert wurden.
- statistics for visitors per day / #56
- pagstats-referer table changed / #70
Dieses Update ändert die tabellenstruktur, es sollte nicht übersprungen werden
- fix incorrect presentation of hours / #71
- date is not any longer inserted in pagstats_data since it is not required there / #69
- device model is now escaped properly / #74
- fixes fore tables and general optical improvements / #73
- fix css interfering with redaxo's backend css
- fix js error for datefilter quickselect
- datefilter is applied instantly
- fix more js errors, datatables was throwing an error when table was empty
- fix datefilter quickselect, month is now calculated correctly
- add quickselects to datefilter fragment
stats_pagedetails.php\get_browser()
stats_pagedetails.php\get_browsertype()
stats_pagedetails.php\get_os()
- escape data before inserted in db / #62
- fix data deletion / #63
- fix dashboard integration
- escape data during migration
- remove unecessary table columns
- table
pagestats_data
- table
pagestats_visits_per_day
- table
pagestats_visits_per_url
- visits are now saved directly in a more separated way to achieve better performance on pages with a hight number of visits per day
- browserdata is not any more separated by date
- table
pagestats_dump
Auf Website mit vielen Besuchen pro Tag kam es im Backend zu extremen Ladezeiten um die Daten aufzubereiten. Um dem Vorzubeugen werden Besuche nun in passendere Tabellenstrukturen gespeichert um eine Auswertung zu beschleunigen.
Beim Upgrade werden die Daten aus der Tabelle pagestats_dump ausgewertet und auf die neuen Tabellen verteilt.
Hinweis: Dieser Migrationsvorgang kann je nach Tabellengröße länger dauern, bitte sicherstellen, dass die PHP Laufzeit ausreichend ist.
- add "id" column as primary key to all tables to increase performance
- pagedetails panel headings
- fix for paginations / #57
- permissions
- change some database fields to "text" type
- change stats layout
- change table search to case-insensitive
- fix date filtering
- adjust setting names
plugins\api\lib\stats_campaign_details.php\get_page_total()
plugins\media\lib\stats_media_details.php\get_page_total()
- add setting to optionally ignore url parameters
- ignore
.css.map
and.js.map
files for logging
- fix integration in dashboard addon
- fix search input overflow / #50
- remove dump() on backend page