Make joined/destroyed member period.
This commit is contained in:
parent
99b86ff9c2
commit
0c7cf11297
2 changed files with 15 additions and 8 deletions
|
@ -46,8 +46,13 @@
|
|||
|
||||
;; Pass 2: known keys
|
||||
(define mandatory-keys '(nick name mail phone))
|
||||
(define optional-keys '(born joined destroyed))
|
||||
(define known-multikeys '(card desfire credit studentstart studentstop suspendstart suspendstop))
|
||||
(define optional-keys '(born))
|
||||
(define known-multikeys
|
||||
'(card desfire
|
||||
credit
|
||||
studentstart studentstop
|
||||
suspendstart suspendstop
|
||||
joined destroyed))
|
||||
(define ignored-keys '(mail2))
|
||||
|
||||
(define known-keys (append mandatory-keys optional-keys))
|
||||
|
@ -60,8 +65,8 @@
|
|||
(suspendstart suspend start)
|
||||
(suspendstop suspend stop)
|
||||
|
||||
;;(joined member start)
|
||||
;;(destroyed member stop)
|
||||
(joined member start)
|
||||
(destroyed member stop)
|
||||
))
|
||||
(define start-stop-markers (map car start-stop-markers-lookup))
|
||||
|
||||
|
@ -70,8 +75,9 @@
|
|||
`((pass-markers
|
||||
,(lambda (mr output key value)
|
||||
(if (member key start-stop-markers)
|
||||
(let ((marker (caddr (assq key start-stop-markers-lookup)))
|
||||
(kind (cadr (assq key start-stop-markers-lookup))))
|
||||
(let* ((mk (assq key start-stop-markers-lookup))
|
||||
(marker (caddr mk))
|
||||
(kind (cadr mk)))
|
||||
(foldl (lambda (mr value)
|
||||
(let* ((mspec (string-first+rest (car value)))
|
||||
(month (string->month (car mspec)))
|
||||
|
@ -87,7 +93,7 @@
|
|||
(info
|
||||
,(lambda (mr output key value)
|
||||
(case key
|
||||
((student suspend)
|
||||
((student suspend member)
|
||||
(let* ((res (period-markers->periods value))
|
||||
(ok? (car res))
|
||||
(periods (cadr res))
|
||||
|
@ -133,7 +139,7 @@
|
|||
(apply
|
||||
member-record-sub-ensure
|
||||
mr 'info
|
||||
'joined (*member-default-joined*)
|
||||
'member (make-period (*member-default-joined*) #f)
|
||||
(join (map (lambda (mk) (list mk #f)) mandatory-keys))))
|
||||
|
||||
;; Pass 0: Removes any comments and removes any leading and trailing
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
(module
|
||||
period
|
||||
(
|
||||
make-period
|
||||
period-since
|
||||
period-before
|
||||
period-scomment
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue