Support for member fees in format strings.
This commit is contained in:
		
							parent
							
								
									f6fb372938
								
							
						
					
					
						commit
						9de64f7004
					
				
					 2 changed files with 18 additions and 8 deletions
				
			
		|  | @ -335,7 +335,8 @@ util-format.o: util-format.import.scm | |||
| util-format.import.scm: $(UTIL-FORMAT-SOURCES) | ||||
| 
 | ||||
| BRMEMBER-FORMAT-SOURCES=brmember-format.scm util-dict-list.import.scm	\
 | ||||
| 	brmember.import.scm bank-account.import.scm | ||||
| 	brmember.import.scm bank-account.import.scm			\
 | ||||
| 	members-fees.import.scm | ||||
| 
 | ||||
| brmember-format.o: brmember-format.import.scm | ||||
| brmember-format.import.scm: $(BRMEMBER-FORMAT-SOURCES) | ||||
|  |  | |||
|  | @ -37,7 +37,8 @@ | |||
| 	 (chicken format) | ||||
| 	 util-dict-list | ||||
| 	 brmember | ||||
| 	 bank-account) | ||||
| 	 bank-account | ||||
| 	 members-fees) | ||||
| 
 | ||||
|  ;; Member formatting function for general use. | ||||
|  (define (brmember-format fmt mr) | ||||
|  | @ -49,19 +50,27 @@ | |||
| 	   (if (eq? ch #\~) | ||||
| 	       (loop (cddr fmtl) | ||||
| 		     (cons (case (cadr fmtl) | ||||
| 			     ((#\N) (brmember-nick mr)) | ||||
| 			     ((#\I) (number->string (brmember-id mr))) | ||||
| 			     ((#\S) (number->string (brmember-suspended-months mr))) | ||||
| 			     ((#\E) | ||||
| 			     ((#\N) ; Nickname | ||||
| 			      (brmember-nick mr)) | ||||
| 			     ((#\I) ; Member id | ||||
| 			      (number->string (brmember-id mr))) | ||||
| 			     ((#\S) ; Number of months this member is | ||||
| 				    ; currently suspended for (0 for | ||||
| 				    ; non-suspended) | ||||
| 			      (number->string (brmember-suspended-months mr))) | ||||
| 			     ((#\E) ; Number of errors/warnings | ||||
| 			      (let ((n (length (ldict-ref mr 'highlights '())))) | ||||
| 				(if (eq? n 0) | ||||
| 				    "" | ||||
| 				    (sprintf "[~A]" n)))) | ||||
| 			     ((#\P) | ||||
| 			     ((#\P) ; Date of last payment | ||||
| 			      (let ((payments (brmember-payments mr))) | ||||
| 				(if (null? payments) | ||||
| 				    "-" | ||||
| 				    (bank-transaction-date (car payments))))) | ||||
| 				    (sprintf "~A" (bank-transaction-date (car payments)))))) | ||||
| 			     ((#\F) ; Fees to be paid (total over all | ||||
| 				    ; membership periods) | ||||
| 			      (sprintf "~A" (member-fees-total mr))) | ||||
| 			     ((#\~) "~")) | ||||
| 			   resl)) | ||||
| 	       (loop (cdr fmtl) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue