diff options
author | Hugo Hörnquist <hugo@lysator.liu.se> | 2020-04-27 23:02:34 +0200 |
---|---|---|
committer | Hugo Hörnquist <hugo@lysator.liu.se> | 2020-04-27 23:02:34 +0200 |
commit | ab2f5ae1f63ff9b880b64d6be16cf7332a0563e7 (patch) | |
tree | 8ccc945c33162394194b0df63caf9be470f3a07b | |
parent | Eventlist now only scrolls vertically. (diff) | |
download | calp-ab2f5ae1f63ff9b880b64d6be16cf7332a0563e7.tar.gz calp-ab2f5ae1f63ff9b880b64d6be16cf7332a0563e7.tar.xz |
Move events-between to datetime/vcomponent.
Diffstat (limited to '')
-rw-r--r-- | module/output/html.scm | 12 | ||||
-rw-r--r-- | module/vcomponent/datetime.scm | 13 |
2 files changed, 13 insertions, 12 deletions
diff --git a/module/output/html.scm b/module/output/html.scm index f15776cb..d095493a 100644 --- a/module/output/html.scm +++ b/module/output/html.scm @@ -100,18 +100,6 @@ (values (datetime->string s fmt-str) (datetime->string e fmt-str))))])) -;; date, date, [sorted-stream events] → [list events] -(define (events-between start-date end-date events) - (define (overlaps e) - (timespan-overlaps? start-date (date+ end-date (date day: 1)) - (attr e 'DTSTART) (attr e 'DTEND))) - - (stream-filter overlaps - (get-stream-interval - overlaps - (lambda (e) (not (date< end-date (as-date (attr e 'DTSTART))))) - events))) - diff --git a/module/vcomponent/datetime.scm b/module/vcomponent/datetime.scm index 745bf551..44776516 100644 --- a/module/vcomponent/datetime.scm +++ b/module/vcomponent/datetime.scm @@ -124,6 +124,19 @@ Event must have the DTSTART and DTEND attribute set." (as-datetime final)) #f)))) +;; date, date, [sorted-stream events] → [list events] +(define-public (events-between start-date end-date events) + (define (overlaps e) + (timespan-overlaps? start-date (date+ end-date (date day: 1)) + (attr e 'DTSTART) (attr e 'DTEND))) + + ((@ (srfi srfi-41) stream-filter) + overlaps + ((@ (srfi srfi-41 util) get-stream-interval) + overlaps + (lambda (e) (not (date< end-date (as-date (attr e 'DTSTART))))) + events))) + |