summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2018-11-07 01:41:57 -0500
committerJesse Luehrs <doy@tozt.net>2018-11-07 01:41:57 -0500
commit2f5bc1cb9f31d431d017d173728fd1e782c97c8e (patch)
treee14d79b573404dbe1963d1614dc24560c43c2c67
parentb7038ffa9e8fa84ef993bf406fdb82c48cb8a760 (diff)
downloadlastfm-query-2f5bc1cb9f31d431d017d173728fd1e782c97c8e.tar.gz
lastfm-query-2f5bc1cb9f31d431d017d173728fd1e782c97c8e.zip
ignore the currently playing song
-rw-r--r--src/lastfm/api_types.rs2
-rw-r--r--src/lastfm/mod.rs3
2 files changed, 3 insertions, 2 deletions
diff --git a/src/lastfm/api_types.rs b/src/lastfm/api_types.rs
index 30d7114..a7c3712 100644
--- a/src/lastfm/api_types.rs
+++ b/src/lastfm/api_types.rs
@@ -23,7 +23,7 @@ pub struct track {
pub artist: track_artist,
pub name: String,
pub album: track_album,
- pub date: track_date,
+ pub date: Option<track_date>,
}
#[derive(Deserialize)]
diff --git a/src/lastfm/mod.rs b/src/lastfm/mod.rs
index cb0afaf..b510eb3 100644
--- a/src/lastfm/mod.rs
+++ b/src/lastfm/mod.rs
@@ -69,12 +69,13 @@ impl<'a> Tracks<'a> {
let data: api_types::recent_tracks = res.json()?;
self.buf = data.recenttracks.track
.iter()
+ .filter(|t| { t.date.is_some() })
.map(|t| {
Ok(Track {
artist: t.artist.text.clone(),
album: t.album.text.clone(),
name: t.name.clone(),
- timestamp: t.date.uts.parse()?,
+ timestamp: t.date.as_ref().unwrap().uts.parse()?,
})
})
.collect::<Result<Vec<Track>>>()?;