From 6546132ed7b3fdc556912eab7fbc709875cb0b73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Tue, 24 Mar 2020 23:02:24 +0100 Subject: Move some datetime procedures to propper modules. --- module/vcomponent/datetime.scm | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'module/vcomponent/datetime.scm') diff --git a/module/vcomponent/datetime.scm b/module/vcomponent/datetime.scm index 5df4dfab..b3940644 100644 --- a/module/vcomponent/datetime.scm +++ b/module/vcomponent/datetime.scm @@ -93,3 +93,13 @@ Event must have the DTSTART and DTEND attribute set." ;; 22:00 - 03:00 ;; 2h för dag 1 ;; 3h för dag 2 + +;; An event is considered long if it's DTSTART (and thereby DTEND) lacks a time component, +;; or if the total length of the event is greater than 24h. +;; For practical purposes, an event being long means that it shouldn't be rendered as a part +;; of a regular day. +(define-public (long-event? ev) + (or (date? (attr ev 'DTSTART)) + (datetime<= (datetime date: (date day: 1)) + (datetime-difference (attr ev 'DTEND) + (attr ev 'DTSTART))))) -- cgit v1.2.3