Move more stuff into configuration module.

This commit is contained in:
Dominik Pantůček 2023-03-20 13:55:21 +01:00
parent 49a638fa76
commit bc0420bbc0
4 changed files with 22 additions and 18 deletions

View file

@ -157,7 +157,7 @@ member-record.so: member-record.o
member-record.o: member-record.import.scm
member-record.import.scm: $(MEMBER-RECORD-SOURCES)
CONFIGURATION-SOURCES=configuration.scm
CONFIGURATION-SOURCES=configuration.scm month.import.scm
configuration.so: configuration.o
configuration.o: configuration.import.scm

View file

@ -36,7 +36,8 @@ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
ansi
members-base
primes
member-record)
member-record
configuration)
;; Print banner
(print "brmsaptool 0.4 (c) 2023 Brmlab, z.s.")

View file

@ -29,17 +29,33 @@
configuration
(
*current-month*
*member-file-context*
*member-file-check-syntax*
*member-default-joined*
)
(import scheme
(chicken base)
(chicken time)
(chicken time posix))
(chicken time posix)
month)
;; Current month - if changed, we get the actual state for given month.
(define *current-month*
(make-parameter
(let ((d (seconds->local-time (current-seconds))))
(list (+ 1900 (vector-ref d 5))
(vector-ref d 4)))))
;; Configuration of error reporting
(define *member-file-context* (make-parameter 3))
;; Tolerance to formal errors (invalid key or key without value):
;; 'error - show source and exits with error
;; 'warning - show source and error, continue
;; 'quiet - ignore
(define *member-file-check-syntax* (make-parameter 'error))
(define *member-default-joined* (make-parameter (make-month 2015 1)))
)

View file

@ -28,9 +28,6 @@
(module
member-file
(
*member-file-context*
*member-file-check-syntax*
*member-default-joined*
member-file-error-symbol
load-member-file
member-file-tests!
@ -48,7 +45,8 @@
period
testing
listing
ansi)
ansi
configuration)
;; Specification of known keys for various types of parsing
(define known-keys '(nick mail phone name born joined destroyed
@ -57,17 +55,6 @@
(define start/stop-keys '(student suspend))
(define multi-keys '(card desfire credit))
;; Configuration of error reporting
(define *member-file-context* (make-parameter 3))
;; Tolerance to formal errors (invalid key or key without value):
;; 'error - show source and exits with error
;; 'warning - show source and error, continue
;; 'quiet - ignore
(define *member-file-check-syntax* (make-parameter 'error))
(define *member-default-joined* (make-parameter (make-month 2015 1)))
;; Symbol used for error reporting in member file keys.
(define member-file-error-symbol
(string->symbol