From d0ace275ec7c0935bea2d238d9579c5728f907b2 Mon Sep 17 00:00:00 2001 From: Paul van Tilburg Date: Thu, 24 Feb 2022 20:21:48 +0100 Subject: [PATCH] Filter out items that are older than 1h before now Luchtmeetnet seems to yield some results that are in the past some times? --- src/providers/luchtmeetnet.rs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/providers/luchtmeetnet.rs b/src/providers/luchtmeetnet.rs index 6a007bd..6cd3b72 100644 --- a/src/providers/luchtmeetnet.rs +++ b/src/providers/luchtmeetnet.rs @@ -4,7 +4,7 @@ use cached::proc_macro::cached; use chrono::serde::ts_seconds; -use chrono::{DateTime, Utc}; +use chrono::{DateTime, Duration, Utc}; use reqwest::Url; use rocket::serde::{Deserialize, Serialize}; @@ -75,5 +75,13 @@ pub(crate) async fn get(position: Position, metric: Metric) -> Option> Err(_err) => return None, }; - Some(root.data) + // Filter items that are older than one hour before now. They seem to occur sometimes? + let too_old = Utc::now() - Duration::hours(1); + let items = root + .data + .into_iter() + .filter(|item| item.time > too_old) + .collect(); + + Some(items) }