diff --git a/resources/js/admin/i18n/locales/de/management.json b/resources/js/admin/i18n/locales/de/management.json
index 6a6f4ca..aaa3d8e 100644
--- a/resources/js/admin/i18n/locales/de/management.json
+++ b/resources/js/admin/i18n/locales/de/management.json
@@ -2883,6 +2883,7 @@
"kpiLikes": "Likes",
"activityTitle": "Aktivitäts-Zeitachse",
"timeframe": "Letzte {{hours}} Stunden",
+ "timeframeHint": "Ältere Aktivität ausgeblendet",
"uploadsPerHour": "Uploads pro Stunde",
"noActivity": "Noch keine Uploads",
"emptyActionShareQr": "QR-Code teilen",
diff --git a/resources/js/admin/i18n/locales/en/management.json b/resources/js/admin/i18n/locales/en/management.json
index 9a59bbc..cb7932e 100644
--- a/resources/js/admin/i18n/locales/en/management.json
+++ b/resources/js/admin/i18n/locales/en/management.json
@@ -2887,6 +2887,7 @@
"kpiLikes": "Likes",
"activityTitle": "Activity Timeline",
"timeframe": "Last {{hours}} hours",
+ "timeframeHint": "Older activity hidden",
"uploadsPerHour": "Uploads per hour",
"noActivity": "No uploads yet",
"emptyActionShareQr": "Share your QR code",
diff --git a/resources/js/admin/mobile/EventAnalyticsPage.tsx b/resources/js/admin/mobile/EventAnalyticsPage.tsx
index 307321e..d753513 100644
--- a/resources/js/admin/mobile/EventAnalyticsPage.tsx
+++ b/resources/js/admin/mobile/EventAnalyticsPage.tsx
@@ -98,7 +98,10 @@ export default function MobileEventAnalyticsPage() {
const hasTimeline = timeline.length > 0;
const hasContributors = contributors.length > 0;
const hasTasks = tasks.length > 0;
- const timeframeHours = resolveTimelineHours(timeline.map((point) => point.timestamp), 12);
+ const fallbackHours = 12;
+ const rawTimelineHours = resolveTimelineHours(timeline.map((point) => point.timestamp), fallbackHours);
+ const timeframeHours = Math.min(rawTimelineHours, fallbackHours);
+ const isTimeframeCapped = rawTimelineHours > fallbackHours;
// Prepare chart data
const maxTimelineCount = resolveMaxCount(timeline.map((point) => point.count));
@@ -144,9 +147,16 @@ export default function MobileEventAnalyticsPage() {
{t('analytics.activityTitle', 'Activity Timeline')}
-
- {t('analytics.timeframe', 'Last {{hours}} hours', { hours: timeframeHours })}
-
+
+
+ {t('analytics.timeframe', 'Last {{hours}} hours', { hours: timeframeHours })}
+
+ {isTimeframeCapped ? (
+
+ {t('analytics.timeframeHint', 'Older activity hidden')}
+
+ ) : null}
+
{hasTimeline ? (