diff options
author | Hugo Hörnquist <hugo@hornquist.se> | 2019-04-23 18:03:49 +0200 |
---|---|---|
committer | Hugo Hörnquist <hugo@hornquist.se> | 2019-04-23 18:03:49 +0200 |
commit | 8f4fbcd493e28c86c598efcecdb6dc79d8fe0bfe (patch) | |
tree | 37e49d78df0916efcb0d547e0b28b63247cfec3d /module/vcalendar/datetime.scm | |
parent | Change event-length => event-length/day. (diff) | |
download | calp-8f4fbcd493e28c86c598efcecdb6dc79d8fe0bfe.tar.gz calp-8f4fbcd493e28c86c598efcecdb6dc79d8fe0bfe.tar.xz |
Rename module vcalendar => vcomponent.
Diffstat (limited to 'module/vcalendar/datetime.scm')
-rw-r--r-- | module/vcalendar/datetime.scm | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/module/vcalendar/datetime.scm b/module/vcalendar/datetime.scm deleted file mode 100644 index 1e5b5853..00000000 --- a/module/vcalendar/datetime.scm +++ /dev/null @@ -1,58 +0,0 @@ -(define-module (vcalendar datetime) - #:use-module (vcalendar) - #:use-module (srfi srfi-19) - #:use-module (srfi srfi-19 util) - #:use-module (util) - - #:export (parse-datetime - event-overlaps? - overlapping? - event-in? - ev-time<?) - ) - -;;; date time pointer -(define (parse-datetime dtime) - "Parse the given date[time] string into a date object." - (string->date - dtime (case (string-length dtime) - ((8) "~Y~m~d") ; All day - ((15) "~Y~m~dT~H~M~S") ; "local" or TZID-param - ((16) "~Y~m~dT~H~M~S~z")))) ; UTC-time - -(define (event-overlaps? event begin end) - "Returns if the event overlaps the timespan. -Event must have the DTSTART and DTEND attribute set." - (timespan-overlaps? (attr event 'DTSTART) - (attr event 'DTEND) - begin end)) - -(define (overlapping? event-a event-b) - (timespan-overlaps? (attr event-a 'DTSTART) - (attr event-a 'DTEND) - (attr event-b 'DTSTART) - (attr event-b 'DTEND))) - -(define (event-in? ev time) - "Does event overlap the date that contains time." - (let* ((date (time-utc->date time)) - (start (date->time-utc (drop-time date))) - (end (add-day start))) - (event-overlaps? ev start end))) - -(define (ev-time<? a b) - (time<? (attr a 'DTSTART) - (attr b 'DTSTART))) - -;; Returns length of the event @var{e}, as a time-duration object. -(define-public (event-length e) - (time-difference - (attr e 'DTEND) - (attr e 'DTSTART))) - -;; Returns the length of the part of @var{e} which is within the day -;; starting at the time @var{start-of-day}. -(define-public (event-length/day e start-of-day) - (time-difference - (time-min (add-day start-of-day) (attr e 'DTEND)) - (time-max start-of-day (attr e 'DTSTART)))) |