Get member by id and file name.

This commit is contained in:
Dominik Pantůček 2023-03-11 18:15:16 +01:00
parent 7799afbcbc
commit de6ff6e706

View file

@ -433,18 +433,23 @@
(expand-members-raw-index (expand-members-raw-index
(load-members-raw-index))) (load-members-raw-index)))
;; Gets member record by member id (from filename/symlink) ;; Gets member record by member key
(define (find-member-by-id mdb id) (define (find-member-by-key mdb key val)
(let loop ((mdb mdb)) (let loop ((mdb mdb))
(if (null? mdb) (if (null? mdb)
#f #f
(let ((mr (car mdb))) (let ((mr (car mdb)))
(if (eq? (dict-ref mr 'id) id) (if (equal? (dict-ref mr key) val)
mr mr
(loop (cdr mdb))))))) (loop (cdr mdb)))))))
;; Gets member record by member id (from file/symlink)
(define (find-member-by-id mdb id)
(find-member-by-key mdb 'id id))
;; Gets member record by member name (from file/symlink)
(define (find-member-by-fname mb fname) (define (find-member-by-fname mb fname)
#f) (find-member-by-key mdb 'name fname))
(define (find-member-by-nick mb nick) (define (find-member-by-nick mb nick)
#f) #f)
@ -467,8 +472,9 @@
;; Perform requested action ;; Perform requested action
(define mdb (load-members-from-expanded-index (expand-members-raw-index (load-members-raw-index)))) (define mdb (load-members-from-expanded-index (expand-members-raw-index (load-members-raw-index))))
(print mdb) ; (print mdb)
(print (load-member-file "trimen")) ; (print (load-member-file "trimen"))
(print (find-member-by-id mdb 2803)) (print (find-member-by-id mdb 2803))
(print (find-member-by-fname mdb "joe"))