From 3d54c221d0c70c1bf727148642546130cb15a19a Mon Sep 17 00:00:00 2001 From: Pjotr Prins Date: Thu, 10 Aug 2023 14:12:07 +0200 Subject: Getting taxon metadata --- web/webserver.scm | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'web') diff --git a/web/webserver.scm b/web/webserver.scm index 537fad5..bb6412d 100755 --- a/web/webserver.scm +++ b/web/webserver.scm @@ -135,10 +135,14 @@ (string-replace-substring str " " "_") ) -(define (get-expanded-taxon id) +(define (get-expanded-taxon-meta id) "Get information on a specific species, e.g. mouse" - #f - ) + `(("info" . ,id) + ("doc" . ,(mk-doc id)) + ("meta" . ,(mk-meta id)) + ("data" . ,(mk-rec id)) + ("up" . ,(mk-meta "species")) + )) (define (get-expanded-species) "Here we add information related to each species" @@ -240,6 +244,10 @@ (render-json get-version)) (('GET "doc" "species.html") (render-doc "doc" "species.html" (get-species-meta))) + (('GET "doc" taxon) + (match (string->list taxon) + [(name ... #\. #\h #\t #\m #\l) + (render-doc "doc" taxon (get-expanded-taxon-meta (list->string name)))])) (('GET "doc" path ... page) ; serve documents from /doc/ (render-doc path page)) (('GET "species.json") @@ -251,7 +259,7 @@ (('GET id) (let ([names (get-species-shortnames (get-expanded-species))]) (match (string->list id) - [(name ... #\. #\j #\s #\o #\n) (render-json (list->string name))] + [(name ... #\. #\m #\e #\t #\a #\. #\j #\s #\o #\n) (render-json (get-expanded-taxon-meta (list->string name)))] [rest (render-json "WIP")]))) (_ (not-found (request-uri request))) )) -- cgit v1.2.3