장기 방문자 통계 추가 v1.7.7
This commit is contained in:
@@ -642,6 +642,9 @@ export const getAnalyticsSummary = async (options = {}) => {
|
||||
todayPageViews: 0,
|
||||
todayAvgEngagedSeconds: 0,
|
||||
visitorsLast7Days: 0,
|
||||
visitorsLast30Days: 0,
|
||||
visitorsLast180Days: 0,
|
||||
visitorsLast365Days: 0,
|
||||
pageViewsLast30Days: 0,
|
||||
onlineNow: 0,
|
||||
loggedInNow: 0,
|
||||
@@ -655,6 +658,8 @@ export const getAnalyticsSummary = async (options = {}) => {
|
||||
const today = getAnalyticsDayKey()
|
||||
const last7StartDay = getAnalyticsDayBefore(today, 6)
|
||||
const last30StartDay = getAnalyticsDayBefore(today, 29)
|
||||
const last180StartDay = getAnalyticsDayBefore(today, 179)
|
||||
const last365StartDay = getAnalyticsDayBefore(today, 364)
|
||||
const rangeStartDay = getAnalyticsDayBefore(today, days - 1)
|
||||
await purgeStaleActiveSessions(sql)
|
||||
await purgeAnalyticsRetention(sql)
|
||||
@@ -666,10 +671,14 @@ export const getAnalyticsSummary = async (options = {}) => {
|
||||
LIMIT 1
|
||||
`
|
||||
|
||||
const last7Rows = await sql`
|
||||
SELECT COALESCE(SUM(visitors), 0)::int AS visitors
|
||||
const visitorPeriodRows = await sql`
|
||||
SELECT
|
||||
COALESCE(SUM(visitors) FILTER (WHERE day >= ${last7StartDay}::date), 0)::int AS visitors_last_7_days,
|
||||
COALESCE(SUM(visitors) FILTER (WHERE day >= ${last30StartDay}::date), 0)::int AS visitors_last_30_days,
|
||||
COALESCE(SUM(visitors) FILTER (WHERE day >= ${last180StartDay}::date), 0)::int AS visitors_last_180_days,
|
||||
COALESCE(SUM(visitors) FILTER (WHERE day >= ${last365StartDay}::date), 0)::int AS visitors_last_365_days
|
||||
FROM site_analytics_daily
|
||||
WHERE day >= ${last7StartDay}::date
|
||||
WHERE day >= ${last365StartDay}::date
|
||||
`
|
||||
|
||||
const pageViewRows = await sql`
|
||||
@@ -738,7 +747,10 @@ export const getAnalyticsSummary = async (options = {}) => {
|
||||
todayAvgEngagedSeconds: todayEngagedViews > 0
|
||||
? Math.round(todayTotalEngagedSeconds / todayEngagedViews)
|
||||
: 0,
|
||||
visitorsLast7Days: Number(last7Rows[0]?.visitors || 0),
|
||||
visitorsLast7Days: Number(visitorPeriodRows[0]?.visitors_last_7_days || 0),
|
||||
visitorsLast30Days: Number(visitorPeriodRows[0]?.visitors_last_30_days || 0),
|
||||
visitorsLast180Days: Number(visitorPeriodRows[0]?.visitors_last_180_days || 0),
|
||||
visitorsLast365Days: Number(visitorPeriodRows[0]?.visitors_last_365_days || 0),
|
||||
pageViewsLast30Days: Number(pageViewRows[0]?.page_views || 0),
|
||||
onlineNow: Number(onlineRows[0]?.online_now || 0),
|
||||
loggedInNow: Number(onlineRows[0]?.logged_in_now || 0),
|
||||
|
||||
Reference in New Issue
Block a user