From bf8a7aac4921d17c086e6d35e44a1bc2e37888b8 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Tue, 1 Aug 2017 16:14:15 +1200 Subject: Option to limit report period --- src/org/traccar/reports/ReportUtils.java | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/org/traccar/reports/ReportUtils.java') diff --git a/src/org/traccar/reports/ReportUtils.java b/src/org/traccar/reports/ReportUtils.java index cf94030ab..540feb6c6 100644 --- a/src/org/traccar/reports/ReportUtils.java +++ b/src/org/traccar/reports/ReportUtils.java @@ -40,6 +40,7 @@ import java.math.BigDecimal; import java.math.RoundingMode; import java.util.ArrayList; import java.util.Collection; +import java.util.Date; import java.util.List; import java.util.Locale; import java.util.TimeZone; @@ -49,6 +50,13 @@ public final class ReportUtils { private ReportUtils() { } + public static void checkPeriodLimit(Date from, Date to) { + long limit = Context.getConfig().getLong("report.periodLimit") * 1000; + if (limit > 0 && to.getTime() - from.getTime() > limit) { + throw new IllegalArgumentException("Time period exceeds the limit"); + } + } + public static String getDistanceUnit(long userId) { return (String) Context.getPermissionsManager().lookupPreference(userId, "distanceUnit", "km"); } -- cgit v1.2.3