summaryrefslogtreecommitdiff
path: root/handlers.rkt
diff options
context:
space:
mode:
authorMarius Peter <dev@marius-peter.com>2025-12-13 22:50:05 +0100
committerMarius Peter <dev@marius-peter.com>2025-12-13 22:51:42 +0100
commitfc64ba9e3f119b3e283bd3750385c477381d549a (patch)
treea1db6761bf9a3bdc95b0cc8050f1b7ffc33801ce /handlers.rkt
parent0071a7fdf3c171ffa5a4fb562fd7d29c10251790 (diff)
Add measurement editing + updating logic.
Diffstat (limited to 'handlers.rkt')
-rw-r--r--handlers.rkt11
1 files changed, 11 insertions, 0 deletions
diff --git a/handlers.rkt b/handlers.rkt
index 988789b..49e27d9 100644
--- a/handlers.rkt
+++ b/handlers.rkt
@@ -32,6 +32,8 @@
[("ferti" "measurements" "new") #:method "get" new-measurement]
[("ferti" "measurements" "create") #:method "post" create-measurement]
[("ferti" "measurements" (integer-arg)) #:method "get" show-measurement]
+ [("ferti" "measurements" (integer-arg) "edit") #:method "get" edit-measurement]
+ [("ferti" "measurements" "update") #:method "post" update-measurement]
[("ferti" "measurements" (integer-arg) "destroy") #:method "get" destroy-measurement]
;; Crop rotations
[("ferti" "rotations" "new") #:method "get" new-rotation]
@@ -95,6 +97,15 @@
(define nm (get-nutrient-measurement #:id id))
(render-page (show-measurement-page nm)))
+(define (edit-measurement _ id)
+ (define nm (get-nutrient-measurement #:id id))
+ (render-page (edit-measurement-page nm)))
+
+(define (update-measurement req)
+ (define edited-nutrient-measurement (formlet-process (measurements-formlet) req))
+ (update-nutrient-measurement! edited-nutrient-measurement)
+ (redirect-to "/ferti/measurements-and-rotations"))
+
(define (destroy-measurement _ id)
(delete-nutrient-measurement! id)
(redirect-to "/ferti/measurements-and-rotations"))
Copyright 2019--2026 Marius PETER