mirror of
https://github.com/knadh/listmonk.git
synced 2025-03-14 08:04:24 +08:00
The analytics page showed non-unique counts for views and clicks which was misleading and source of confusion: #522, #561, #571, #676, #680 This commit changes this behaviour to pull unique views and clicks when individual subscriber tracking is turned on in settings, and non-unique counts when it is turned off (as `subscriber_id` in `campaign_views` and `link_clicks` will be NULL, rendering unique queries dysfunctional). This commit changes the stats SQL queries to use string interpolation to either to SELECT `*` or `DISTINCT subscriber_id` on app boot based on the setting in the DB. This involves significant changes to how queries are read and prepared on init. - Refactor `initQueries()` to `readQueries()` and `prepareQueries()`. - Read queries first before preparing. - Load settings from the DB using the read settings query. - Prepare queries next. Use the privacy setting from the DB to apply string interpolation to the analytics queries to pull unique/non-unique before preparing the queries. On the UI: - Show a note on the analytics page about unique/non-unique counts. - Hide the % donut charts on the analytics page in non-unique mode. Closes #676, closes #680 |
||
---|---|---|
.. | ||
cs-cz.json | ||
de.json | ||
en.json | ||
es.json | ||
fr.json | ||
hu.json | ||
it.json | ||
ml.json | ||
nl.json | ||
pl.json | ||
pt-BR.json | ||
pt.json | ||
ro.json | ||
ru.json | ||
tr.json |