aboutsummaryrefslogtreecommitdiff
path: root/module/vcomponent/recurrence/generate.scm
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@hornquist.se>2019-11-05 11:37:33 +0100
committerHugo Hörnquist <hugo@hornquist.se>2019-11-05 11:37:33 +0100
commit831ee6e441e33bc4ce7a87aeb58de45efcadc807 (patch)
tree96d1bc1a7cde62039223537467ff4e81ffc7bc7d /module/vcomponent/recurrence/generate.scm
parentRemove old next-event. (diff)
downloadcalp-831ee6e441e33bc4ce7a87aeb58de45efcadc807.tar.gz
calp-831ee6e441e33bc4ce7a87aeb58de45efcadc807.tar.xz
Move remaining stuff out of vcomponent.
Diffstat (limited to 'module/vcomponent/recurrence/generate.scm')
-rw-r--r--module/vcomponent/recurrence/generate.scm42
1 files changed, 21 insertions, 21 deletions
diff --git a/module/vcomponent/recurrence/generate.scm b/module/vcomponent/recurrence/generate.scm
index 6e022bcc..58961f5e 100644
--- a/module/vcomponent/recurrence/generate.scm
+++ b/module/vcomponent/recurrence/generate.scm
@@ -45,27 +45,27 @@
(define (next-event ev r)
(let ((e (copy-vcomponent ev)))
- (let-env ((TZ (and=> (prop (attr* e 'DTSTART) 'TZID) car))))
-
- (let ((d (time-utc->date (attr e 'DTSTART)))
- (i (interval r)))
- (case (freq r)
- ((SECONDLY) (mod! (second d) = (+ i)))
- ((MINUTELY) (mod! (minute d) = (+ i)))
- ((HOURLY) (mod! (hour d) = (+ i)))
- ((DAILY) (mod! (day d) = (+ i)))
- ((WEEKLY) (mod! (day d) = (+ (* i 7))))
- ((MONTHLY) (mod! (month d) = (+ i)))
- ((YEARLY) (mod! (year d) = (+ i))))
-
- (set! (zone-offset d)
- (zone-offset (time-utc->date (date->time-utc d))))
-
- (set! (attr e 'DTSTART) (date->time-utc d)))
-
- (when (attr e 'DTEND)
- (set! (attr e 'DTEND)
- (add-duration (attr e 'DTSTART) (attr e 'DURATION))))
+ (let-env ((TZ (and=> (prop (attr* e 'DTSTART) 'TZID) car)))
+
+ (let ((d (time-utc->date (attr e 'DTSTART)))
+ (i (interval r)))
+ (case (freq r)
+ ((SECONDLY) (mod! (second d) = (+ i)))
+ ((MINUTELY) (mod! (minute d) = (+ i)))
+ ((HOURLY) (mod! (hour d) = (+ i)))
+ ((DAILY) (mod! (day d) = (+ i)))
+ ((WEEKLY) (mod! (day d) = (+ (* i 7))))
+ ((MONTHLY) (mod! (month d) = (+ i)))
+ ((YEARLY) (mod! (year d) = (+ i))))
+
+ (set! (zone-offset d)
+ (zone-offset (time-utc->date (date->time-utc d))))
+
+ (set! (attr e 'DTSTART) (date->time-utc d)))
+
+ (when (attr e 'DTEND)
+ (set! (attr e 'DTEND)
+ (add-duration (attr e 'DTSTART) (attr e 'DURATION)))))
e))