diff options
| author | Nathan Perry <np@nathanperry.dev> | 2020-09-26 16:13:43 -0400 |
|---|---|---|
| committer | Nathan Perry <np@nathanperry.dev> | 2020-09-26 16:13:43 -0400 |
| commit | ab69488340af2133cf99d67b11e619b5cac467b5 (patch) | |
| tree | 11e29658105b157c0a996ab0f6fa507ec36fbe38 /src/commands/today/pianoman.rs | |
| parent | 23ce35dffe6b8b1fc6e5fd418db6a63922b20c86 (diff) | |
implement piano man
Diffstat (limited to 'src/commands/today/pianoman.rs')
| -rw-r--r-- | src/commands/today/pianoman.rs | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/commands/today/pianoman.rs b/src/commands/today/pianoman.rs new file mode 100644 index 0000000..d2f11a5 --- /dev/null +++ b/src/commands/today/pianoman.rs @@ -0,0 +1,26 @@ +use super::prelude::*; + +lazy_static! { + static ref TARGET_TIME: chrono::NaiveTime = chrono::NaiveTime::from_hms(21, 0, 0); +} + +pub fn pianoman(dt: chrono::NaiveDateTime) -> TodayIter { + if dt.weekday() != chrono::Weekday::Fri { + return Box::new(empty()); + } + + let diff = { + let result = *TARGET_TIME - dt.time(); + if result < chrono::Duration::zero() { + -result + } else { + result + } + }; + + if diff > Duration::minutes(5) { + return Box::new(empty()); + } + + Box::new(once(by_url("https://www.youtube.com/watch?v=gxEPV4kolz0"))) +} |
