Updated frontend call to include local timezone

This commit is contained in:
alexjanousekGSA
2025-01-30 17:24:29 -05:00
parent dafe86aad6
commit c844b9981b
3 changed files with 15 additions and 4 deletions

View File

@@ -201,15 +201,22 @@
return;
}
var url = type === 'service' ? `/daily_stats.json` : `/daily_stats_by_user.json`;
// get local timezone
var userTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
var url = type === 'service'
? `/daily_stats.json?timezone=${encodeURIComponent(userTimezone)}`
: `/daily_stats_by_user.json`;
return fetch(url)
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
console.log(response)
return response.json();
})
.then(data => {
console.log(data)
labels = [];
deliveredData = [];
failedData = [];

View File

@@ -99,8 +99,12 @@ def get_daily_stats():
service_id = session.get("service_id")
date_range = get_stats_date_range()
# Get timezone from request (default to UTC if not provided)
user_timezone = request.args.get("timezone", "UTC")
print(f"Detected User Timezone test124: {user_timezone}")
stats = service_api_client.get_service_notification_statistics_by_day(
service_id, start_date=date_range["start_date"], days=date_range["days"]
service_id, start_date=date_range["start_date"], days=date_range["days"], timezone=user_timezone
)
return jsonify(stats)

View File

@@ -45,13 +45,13 @@ class ServiceAPIClient(NotifyAdminAPIClient):
)["data"]
def get_service_notification_statistics_by_day(
self, service_id, start_date=None, days=None
self, service_id, start_date=None, days=None, timezone="UTC"
):
if start_date is None:
start_date = datetime.now().strftime("%Y-%m-%d")
return self.get(
"/service/{0}/statistics/{1}/{2}".format(service_id, start_date, days),
"/service/{0}/statistics/{1}/{2}?timezone={3}".format(service_id, start_date, days, timezone),
)["data"]
def get_user_service_notification_statistics_by_day(