v1.12.30 긴 접속 시간 표시와 중단 후 새 방문 처리 개선

This commit is contained in:
2026-10-21 18:45:44 +09:00
parent 51d5de148f
commit 7b6fc45bf3
19 changed files with 310 additions and 68 deletions

View File

@@ -8,6 +8,27 @@ export const formatAnalyticsCount = (value) => {
return new Intl.NumberFormat('ko-KR').format(Number.isFinite(number) ? number : 0)
}
/**
* 현재 접속 시간을 최대 두 단위로 짧게 표시한다.
* @param {number} seconds - 접속 시간(초)
* @returns {string} 일·시간·분·초 표시
*/
export const formatRealtimeDuration = (seconds) => {
const input = Number(seconds)
const value = Number.isFinite(input) ? Math.max(0, Math.floor(input)) : 0
if (value >= 86400) {
const hours = Math.floor(value % 86400 / 3600)
return `${formatAnalyticsCount(Math.floor(value / 86400))}일${hours ? ` ${hours}시간` : ''}`
}
if (value >= 3600) {
const minutes = Math.floor(value % 3600 / 60)
return `${formatAnalyticsCount(Math.floor(value / 3600))}시간${minutes ? ` ${minutes}분` : ''}`
}
const minutes = Math.floor(value / 60)
const remainder = value % 60
return minutes ? `${minutes}분${remainder ? ` ${remainder}초` : ''}` : `${remainder}초`
}
/**
* 접속 페이지의 표시 제목을 반환한다.
* @param {Object} page - 활성 페이지