summaryrefslogtreecommitdiff
path: root/views.rkt
diff options
context:
space:
mode:
Diffstat (limited to 'views.rkt')
-rw-r--r--views.rkt34
1 files changed, 29 insertions, 5 deletions
diff --git a/views.rkt b/views.rkt
index 75018a4..0695079 100644
--- a/views.rkt
+++ b/views.rkt
@@ -9,6 +9,7 @@
new-measurement-page
new-rotation-page
new-fertilizer-page
+ edit-fertilizer-page
show-measurement-page
show-rotation-page
show-fertilizer-page
@@ -16,6 +17,7 @@
(require gregor
web-server/formlets
+ racket/hash
"formlets.rkt"
"models/user.rkt"
"models/nutrient.rkt"
@@ -187,9 +189,14 @@
(define (new-measurement-page)
(page-template "Nouveau relevé"
`((h1 ((class "display-1 mb-3")) "Nouveau relevé")
+;; New
+
+(define (form-page-template title action formlet)
+ (page-template title
+ `((h1 ((class "display-1 mb-3")) ,title)
(div ((class "mb-3") [style "max-width: 30em"])
- (form ([action "/ferti/measurements/create"] [method "POST"])
- ,@(formlet-display (measurements-formlet)))))))
+ (form ([action ,action] [method "POST"]) ,@(formlet-display formlet))))))
+
(define (new-rotation-page #:date [date-string #f])
(page-template "Nouvel assolement"
@@ -204,6 +211,17 @@
(div ((class "mb-3") [style "max-width: 30em"])
(form ([action "/ferti/fertilizers/create"] [method "POST"])
,@(formlet-display (fertilizer-formlet)))))))
+;; Edit
+
+(define (edit-fertilizer-page fp)
+ (form-page-template "Modifier intrant" "/ferti/fertilizers/update" (fertilizer-formlet #:value fp)))
+
+;; (define (new-crop-requirement-page)
+;; (page-template "Nouveau profil"
+;; `((h1 ((class "display-1 mb-3")) "Nouveau profil")
+;; (div ((class "mb-3") [style "max-width: 30em"])
+;; (form ([action "/ferti/crop-requirements/create"] [method "POST"])
+;; ,@(formlet-display (crop-requirement-formlet)))))))
(define (show-measurement-page nm)
(define title (format "Relevé du ~a" (normal-date (nutrient-measurement-date nm))))
@@ -251,12 +269,18 @@
(match-define (cons n v) nv-pair)
`(tr (td ,(nutrient-french-name n))
(td ((class "text-end font-monospace")) ,(round 2 v)))))))
+ (define button-group
+ `(div ((class "btn-group"))
+ (a ((class "btn btn-primary")
+ [href ,(format "/ferti/fertilizers/~a/edit" (fertilizer-product-id fp))])
+ "Modifier")
+ (a ((class "btn btn-danger")
+ [href ,(format "/ferti/fertilizers/~a/destroy" (fertilizer-product-id fp))])
+ "Supprimer")))
(page-template product-name
`((h1 ((class "display-1 mb-3")) ,(or brand-name "Intrant générique"))
(h5 ((class "display-5 mb-3")) ,product-name)
- (a ((class "btn btn-danger")
- [href ,(format "/ferti/fertilizers/destroy/~a" (fertilizer-product-id fp))])
- "Supprimer")
+ ,button-group
,table)))
(define (index-page user)
Copyright 2019--2026 Marius PETER