diff options
| author | Marius Peter <dev@marius-peter.com> | 2025-11-23 19:15:04 +0100 |
|---|---|---|
| committer | Marius Peter <dev@marius-peter.com> | 2025-11-23 19:15:04 +0100 |
| commit | fe2fd942e32237864a6b9b6c1709b0407ec9cad8 (patch) | |
| tree | 56cd738ec406b5ff1dcebf86b3f6aa2a06e22847 /handlers.rkt | |
| parent | 08a515500d93bb2eb7750cfcd0cda637bc00523e (diff) | |
Factor out response preamble.
Diffstat (limited to 'handlers.rkt')
| -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))) |