From e1423636a5404f265e7a6d41c6d0afed74b0b8f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Tue, 5 Aug 2025 10:46:10 -0400 Subject: [PATCH] feat: closes #13578, increase uniquevisitors on ap pageviews like normal pageviews --- src/analytics.js | 21 +++++++++++++-------- src/middleware/activitypub.js | 2 +- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/analytics.js b/src/analytics.js index a0fadeab68..773f7088af 100644 --- a/src/analytics.js +++ b/src/analytics.js @@ -102,8 +102,17 @@ Analytics.pageView = async function (payload) { local.pageViewsGuest += 1; } - if (payload.ip) { - const score = await db.sortedSetScore('ip:recent', payload.ip); + await incrementUniqueVisitors(payload.ip); +}; + +Analytics.apPageView = async function ({ ip }) { + local.apPageViews += 1; + await incrementUniqueVisitors(ip); +}; + +async function incrementUniqueVisitors(ip) { + if (ip) { + const score = await db.sortedSetScore('ip:recent', ip); let record = !score; if (score) { const today = new Date(); @@ -113,14 +122,10 @@ Analytics.pageView = async function (payload) { if (record) { local.uniquevisitors += 1; - await db.sortedSetAdd('ip:recent', Date.now(), payload.ip); + await db.sortedSetAdd('ip:recent', Date.now(), ip); } } -}; - -Analytics.apPageView = function () { - local.apPageViews += 1; -}; +} Analytics.writeData = async function () { const today = new Date(); diff --git a/src/middleware/activitypub.js b/src/middleware/activitypub.js index 4390335c0b..f1e78a1cd6 100644 --- a/src/middleware/activitypub.js +++ b/src/middleware/activitypub.js @@ -10,7 +10,7 @@ const middleware = module.exports; middleware.enabled = async (req, res, next) => next(!meta.config.activitypubEnabled ? 'route' : undefined); middleware.pageview = async (req, res, next) => { - analytics.apPageView(); + await analytics.apPageView({ ip: req.ip }); next(); };