Parse feestart/feestop as generic start/stop.

This commit is contained in:
Dominik Pantůček 2023-12-18 22:39:52 +01:00
parent c00b0f8283
commit 259a2664a0
2 changed files with 12 additions and 5 deletions

View file

@ -59,7 +59,8 @@
councilstart councilstop
revisionstart revisionstop
grantstart grantstop
joined destroyed))
joined destroyed
feestart feestop))
(define ignored-keys '(mail2))
(define known-keys (append mandatory-keys optional-keys))
@ -83,6 +84,9 @@
(joined member start)
(destroyed member stop)
(feestart fee start)
(feestop fee stop)
))
(define start-stop-markers (map car start-stop-markers-lookup))
@ -109,7 +113,7 @@
(info
,(lambda (mr output key value)
(case key
((student suspend member revision chair council grant)
((student suspend member revision chair council grant fee)
(let* ((res (period-markers->cal-periods value))
(ok? (car res))
(periods (cadr res))
@ -159,7 +163,10 @@
mr0 (cdr value) "Whitespace not allowed in nick" 3 'error)
mr0)))
(else
(brmember-sub-set mr output key (car value))))))))
(brmember-sub-set mr output key (car value))))))
(fee
,(lambda (mr output key value)
mr))))
;; Pass 4: Final checks - add defaults
(define (member-schema-finalize mr)
@ -253,7 +260,7 @@
(caar passes)
(interpreter-pass mr pass-name (ldict-ref mr prev-name) pass-proc)))))))
;; Loads member file source. Performs passes 0, 1 and 2.
;; Loads member file source. Performs passes 0-4
(define (load-brmember-file mr)
(let* ((mrif (brmember-input-file mr))
(source (read-lines mrif))

View file

@ -114,7 +114,7 @@
(caddr c)))
(brmember-credit mr))
#:border '(((#:right light) ... none) ...))))
((suspend student member council chair revision grant)
((suspend student member council chair revision grant fee)
(let* ((pdata (cons (list "Since" "Until")
(map
(lambda (p)