diff --git a/src/Makefile b/src/Makefile index cc7694a..dff39c2 100644 --- a/src/Makefile +++ b/src/Makefile @@ -184,13 +184,14 @@ BRMEMBER-PARSER-SOURCES=brmember-parser.scm brmember.import.scm \ brmember-parser.o: brmember-parser.import.scm brmember-parser.import.scm: $(BRMEMBER-PARSER-SOURCES) -MEMBERS-PRINT-SOURCES=members-print.scm util-dict-list.import.scm \ - brmember.import.scm month.import.scm table.import.scm \ +MEMBERS-PRINT-SOURCES=members-print.scm util-dict-list.import.scm \ + brmember.import.scm month.import.scm table.import.scm \ listing.import.scm ansi.import.scm period.import.scm \ primes.import.scm members-base.import.scm \ configuration.import.scm bank-account.import.scm \ members-fees.import.scm members-payments.import.scm \ - util-list.import.scm brmember-format.import.scm + util-list.import.scm brmember-format.import.scm \ + specification.import.scm members-print.o: members-print.import.scm members-print.import.scm: $(MEMBERS-PRINT-SOURCES) @@ -227,9 +228,10 @@ bank-fio.o: bank-fio.import.scm bank-fio.import.scm: $(BANK-FIO-SOURCES) MEMBERS-PAYMENTS-SOURCES=members-payments.scm bank-account.import.scm \ - util-dict-list.import.scm members-fees.import.scm \ + util-dict-list.import.scm members-fees.import.scm \ period.import.scm configuration.import.scm \ - progress.import.scm bank-fio.import.scm util-list.import.scm + progress.import.scm bank-fio.import.scm util-list.import.scm \ + specification.import.scm members-payments.o: members-payments.import.scm members-payments.import.scm: $(MEMBERS-PAYMENTS-SOURCES) diff --git a/src/configuration.scm b/src/configuration.scm index 6d4456d..d731ee8 100644 --- a/src/configuration.scm +++ b/src/configuration.scm @@ -30,8 +30,6 @@ ( *current-month* - *member-suspend-max-months* - *etc-hackerbase* *members-directory* @@ -59,9 +57,6 @@ (list (+ 1900 (vector-ref d 5)) (+ (vector-ref d 4) 1))))) - ;; How long the member can be suspended without any action required? - (define *member-suspend-max-months* (make-parameter 24)) - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Initial configuration from *etc-hackerbase* diff --git a/src/members-payments.scm b/src/members-payments.scm index 96129c7..ab7dd34 100644 --- a/src/members-payments.scm +++ b/src/members-payments.scm @@ -53,12 +53,8 @@ period configuration util-list - progress) - - ;; Exchange rates - (define exchange-rates-lookup-table - (make-period-lookup-table - '(((2010 1) 25)))) + progress + specification) ;; Transaction types to ignore (define ignored-transaction-types diff --git a/src/members-print.scm b/src/members-print.scm index d344eec..3301161 100644 --- a/src/members-print.scm +++ b/src/members-print.scm @@ -60,7 +60,8 @@ bank-account members-fees members-payments - brmember-format) + brmember-format + specification) ;; Prints human-readable information (define (print-member-info mr) @@ -273,7 +274,7 @@ (let ((suspended2 (filter (lambda (mr) (>= (brmember-suspended-months mr) - (*member-suspend-max-months*))) + member-suspend-max-months)) suspended-mrs))) (if (null? suspended2) #f diff --git a/src/specification.scm b/src/specification.scm index e5b72a3..84444e6 100644 --- a/src/specification.scm +++ b/src/specification.scm @@ -29,6 +29,8 @@ specification ( member-fees-lookup-table + exchange-rates-lookup-table + member-suspend-max-months ) (import scheme @@ -39,4 +41,12 @@ (make-period-lookup-table '(((2010 1) 500 250)))) + ;; Exchange rates + (define exchange-rates-lookup-table + (make-period-lookup-table + '(((2010 1) 25)))) + + ;; How long the member can be suspended without any action required? + (define member-suspend-max-months 24) + )