diff options
| -rw-r--r-- | handlers.rkt | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/handlers.rkt b/handlers.rkt index a6b6a13..6458e9a 100644 --- a/handlers.rkt +++ b/handlers.rkt @@ -56,23 +56,25 @@ [("") #:method "get" index] [else fallback])) +(define (render-page xexpr) + (response/xexpr #:preamble #"<!DOCTYPE html>" xexpr)) + (define (ferti _) (define ferti-recipe (find-ferti-recipe)) (define latest-measurement-hash (get-latest-nutrient-measurement-hash)) (define latest-target-hash (get-latest-nutrient-target-hash)) (define latest-measurements (take (get-nutrient-measurements) 10)) - (response/xexpr - #:preamble #"<!DOCTYPE html>" + (render-page (ferti-page ferti-recipe latest-measurement-hash latest-target-hash latest-measurements))) (define (index _) (define user (get-current-user)) - (response/xexpr #:preamble #"<!DOCTYPE html>" (index-page user))) + (render-page (index-page user))) ;; Nutrient measurements (define (new-measurement _) - (response/xexpr #:preamble #"<!DOCTYPE html>" (new-measurement-page))) + (render-page (new-measurement-page))) (define (create-measurement req) (define-values (measured-on nutrient-values) (formlet-process (measurements-formlet) req)) @@ -86,7 +88,7 @@ ;; Nutrient targets (define (new-target _) - (response/xexpr #:preamble #"<!DOCTYPE html>" (new-target-page))) + (render-page (new-target-page))) (define (create-target req) (define-values (effective-on nutrient-values) (formlet-process (targets-formlet) req)) @@ -96,7 +98,7 @@ ;; Fertilizer products (define (new-fertilizer _) - (response/xexpr #:preamble #"<!DOCTYPE html>" (new-fertilizer-page))) + (render-page (new-fertilizer-page))) (define (create-fertilizer req) (define-values (canonical-name brand-name nutrient-values) @@ -107,4 +109,4 @@ ;; Fallback (define (fallback _) - (response/xexpr #:preamble #"<!DOCTYPE html>" (fallback-page 404))) + (render-page (fallback-page 404))) |