[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[no subject]
From: |
Ricardo Wurmus |
Date: |
Wed, 19 Jun 2019 09:42:42 -0400 (EDT) |
branch: master
commit 219506d5f9769f8c36e7f3fea9ac935b4363e005
Author: Ricardo Wurmus <address@hidden>
Date: Wed Jun 19 15:38:01 2019 +0200
cuirass: Restore search query.
* src/cuirass/templates.scm (search-form): Take the query as an argument and
set it as the value (unless #F).
(html-page): Optionally take a value for QUERY as an argument.
* src/cuirass/http.scm (url-handler): Let "search" handler pass QUERY to
HTML-PAGE.
---
src/cuirass/http.scm | 3 ++-
src/cuirass/templates.scm | 10 ++++++----
2 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/src/cuirass/http.scm b/src/cuirass/http.scm
index 5bd736b..02fc6f0 100644
--- a/src/cuirass/http.scm
+++ b/src/cuirass/http.scm
@@ -440,7 +440,8 @@ Hydra format."
(border-high-id . ,border-high-id)))
builds-id-min
builds-id-max)
- '()))
+ '()
+ query))
(respond-json-with-error 500 "Query parameter not provided!"))))
(("static" path ...)
diff --git a/src/cuirass/templates.scm b/src/cuirass/templates.scm
index fb3c7e9..6fa8643 100644
--- a/src/cuirass/templates.scm
+++ b/src/cuirass/templates.scm
@@ -45,7 +45,7 @@
,(assq-ref item #:name)))
(navigation-items rest)))))
-(define search-form
+(define (search-form query)
`(form (@ (id "search")
(class "form-inline")
(action "/search"))
@@ -55,14 +55,16 @@
(class "form-control")
(id "query")
(name "query")
- (placeholder "search for builds")))
+ ,(if query
+ `(value ,query)
+ '(placeholder "search for builds"))))
(span (@ (class "input-group-append"))
(button
(@ (type "submit")
(class "btn btn-primary"))
"Search")))))
-(define (html-page title body navigation)
+(define* (html-page title body navigation #:optional query)
"Return HTML page with given TITLE and BODY."
`(html (@ (xmlns "http://www.w3.org/1999/xhtml")
(xml:lang "en")
@@ -95,7 +97,7 @@
(href "/"))
Home))
,@(navigation-items navigation)))
- ,search-form)
+ ,(search-form query))
(main (@ (role "main") (class "container pt-4 px-1"))
,body
(hr)))))