aboutsummaryrefslogtreecommitdiff
path: root/module/output/sxml-types.scm
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@lysator.liu.se>2020-06-25 23:54:48 +0200
committerHugo Hörnquist <hugo@lysator.liu.se>2020-06-25 23:54:48 +0200
commitdbd8713dda050a7b7147de6e5eacbf43d7fcc2db (patch)
treebe8ca4fb35165df0fae371ca7a3528802445982e /module/output/sxml-types.scm
parentMinor changes to vcomponent base. (diff)
downloadcalp-dbd8713dda050a7b7147de6e5eacbf43d7fcc2db.tar.gz
calp-dbd8713dda050a7b7147de6e5eacbf43d7fcc2db.tar.xz
Fix number of problems with new serializers.
Diffstat (limited to 'module/output/sxml-types.scm')
-rw-r--r--module/output/sxml-types.scm18
1 files changed, 10 insertions, 8 deletions
diff --git a/module/output/sxml-types.scm b/module/output/sxml-types.scm
index 623ff9e8..bd7253fd 100644
--- a/module/output/sxml-types.scm
+++ b/module/output/sxml-types.scm
@@ -3,26 +3,28 @@
:use-module (output types)
:use-module (datetime)
:use-module (datetime util)
+ :use-module (output common)
)
(define (write-boolean _ v)
`(boolean ,(if v "true" "false")))
-(define (write-date _ value)
+(define (write-date _ v)
`(date ,(date->string v "~Y-~m-~d")))
(define (write-datetime p v)
;; TODO TZID?
- (datetime->string
- (hashq-ref p 'X-HNH-ORIGINAL v)
- ;; TODO ~z?
- "~Y-~m-~dT~H:~M:~S~Z"))
+ `(date-time
+ ,(datetime->string
+ (hashq-ref p 'X-HNH-ORIGINAL v)
+ ;; TODO ~z?
+ "~Y-~m-~dT~H:~M:~S~Z")))
(define (write-time _ v)
- (time->string v "~H:~M:S"))
+ `(time ,(time->string v "~H:~M:S")))
(define (write-recur _ v)
- `(recur ,@(recur-rule->rrule-sxml v)))
+ `(recur ,@((@@ (vcomponent recurrence internal) recur-rule->rrule-sxml) v)))
;; sepparate since this text shouldn't be escaped
(define (write-text _ v)
@@ -39,7 +41,7 @@
(hashq-set! sxml-writers simple-type
(lambda (p v)
`(,(downcase-symbol simple-type)
- ,((get-writer simple-type) p v)))))
+ ,(((@ (output types) get-writer) simple-type) p v)))))
(hashq-set! sxml-writers 'BOOLEAN write-boolean)
(hashq-set! sxml-writers 'DATE write-date)