aboutsummaryrefslogtreecommitdiff
path: root/module/vcalendar/datetime.scm
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@hornquist.se>2019-04-23 18:03:49 +0200
committerHugo Hörnquist <hugo@hornquist.se>2019-04-23 18:03:49 +0200
commit8f4fbcd493e28c86c598efcecdb6dc79d8fe0bfe (patch)
tree37e49d78df0916efcb0d547e0b28b63247cfec3d /module/vcalendar/datetime.scm
parentChange event-length => event-length/day. (diff)
downloadcalp-8f4fbcd493e28c86c598efcecdb6dc79d8fe0bfe.tar.gz
calp-8f4fbcd493e28c86c598efcecdb6dc79d8fe0bfe.tar.xz
Rename module vcalendar => vcomponent.
Diffstat (limited to 'module/vcalendar/datetime.scm')
-rw-r--r--module/vcalendar/datetime.scm58
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))))