aboutsummaryrefslogtreecommitdiff
path: root/module/vcomponent/recurrence/generate.scm
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@lysator.liu.se>2019-11-11 12:07:11 +0100
committerHugo Hörnquist <hugo@lysator.liu.se>2019-11-11 14:11:36 +0100
commit4572d6dc612f73a3f44c1a8d4dc49c83dced07af (patch)
tree249ec361f9164a76db781532e9d62638e70a3827 /module/vcomponent/recurrence/generate.scm
parentWork on ICS output. (diff)
downloadcalp-4572d6dc612f73a3f44c1a8d4dc49c83dced07af.tar.gz
calp-4572d6dc612f73a3f44c1a8d4dc49c83dced07af.tar.xz
Work on ICS output.
Diffstat (limited to 'module/vcomponent/recurrence/generate.scm')
-rw-r--r--module/vcomponent/recurrence/generate.scm13
1 files changed, 6 insertions, 7 deletions
diff --git a/module/vcomponent/recurrence/generate.scm b/module/vcomponent/recurrence/generate.scm
index 58961f5e..84025d2f 100644
--- a/module/vcomponent/recurrence/generate.scm
+++ b/module/vcomponent/recurrence/generate.scm
@@ -65,7 +65,7 @@
(when (attr e 'DTEND)
(set! (attr e 'DTEND)
- (add-duration (attr e 'DTSTART) (attr e 'DURATION)))))
+ (add-duration (attr e 'DTSTART) (attr e 'X-HNH-DURATION)))))
e))
@@ -114,12 +114,11 @@
(if (not (attr event 'RRULE))
(stream event)
(begin
- (when (and (attr event 'DTEND)
- (not (attr event 'DURATION)))
- (set! (attr event "DURATION")
- (time-difference
- (attr event "DTEND")
- (attr event "DTSTART"))))
+ (set! (attr event 'X-HNH-DURATION)
+ (cond [(attr event 'DURATION) => identity]
+ [(attr event 'DTEND) => (lambda (end)
+ (time-difference
+ end (attr event "DTSTART")))]))
(if (attr event "RRULE")
(recur-event-stream event (parse-recurrence-rule (attr event "RRULE")))
;; TODO some events STANDARD and DAYLIGT doesn't have RRULE's, but rather