summaryrefslogtreecommitdiff
path: root/formlets.rkt
diff options
context:
space:
mode:
Diffstat (limited to 'formlets.rkt')
-rw-r--r--formlets.rkt23
1 files changed, 18 insertions, 5 deletions
diff --git a/formlets.rkt b/formlets.rkt
index 116db81..7ebd0b9 100644
--- a/formlets.rkt
+++ b/formlets.rkt
@@ -12,17 +12,30 @@
"models/crop.rkt"
"models/crop-requirement.rkt")
-(define (measurements-formlet)
- (formlet* (#%# `(div ((class "mb-3")) (h5 "Date du relevé") ,{=>* (date-formlet) measurement-date*})
+(define (measurements-formlet #:value [nm #f])
+ (formlet* (#%# (=>* (to-string (required (hidden (if nm
+ (number->string (nutrient-measurement-id nm))
+ ""))))
+ id*)
+ `(div ((class "mb-3"))
+ (h5 "Date du relevé")
+ ,(=>* (date-formlet #:value (if nm
+ (nutrient-measurement-date nm)
+ (date->iso8601 (today))))
+ measurement-date*))
`(div ((class "mb-3"))
(h5 "Valeurs du relevé")
- ,@(for/list ([nutrient (get-nutrients)])
- {=>* (nutrient-value-formlet nutrient) nutrient-values*}))
+ ,@(for/list ([n (get-nutrients)])
+ (define v
+ (if nm
+ (nutrient-measurement-value nm n)
+ 0))
+ (=>* (nutrient-value-formlet n v) nutrient-values*)))
{=>* (submit "Enregistrer le relevé" #:attributes '((class "btn btn-primary"))) _})
- (values measurement-date nutrient-values))))
(let ([id (first id*)]
[measurement-date (first measurement-date*)]
[nutrient-values (make-immutable-hash nutrient-values*)])
+ (nutrient-measurement id measurement-date nutrient-values))))
(define (rotation-formlet #:date [date-string #f])
(formlet* (#%# `(div ((class "mb-3"))
Copyright 2019--2026 Marius PETER