diff options
Diffstat (limited to 'handlers.rkt')
| -rw-r--r-- | handlers.rkt | 11 |
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")) |