diff options
author | Christopher Baines <mail@cbaines.net> | 2019-05-11 16:49:18 +0100 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2019-05-11 16:49:18 +0100 |
commit | 3611f7b1225f66d8d1469d715ba5ad63a0e133cd (patch) | |
tree | f9be59a3619ce93d27d7c84c5805e0e66d718d28 /guix-data-service/web/controller.scm | |
parent | a7053846f144155e4459ebfd843b860167ffb7af (diff) | |
download | data-service-3611f7b1225f66d8d1469d715ba5ad63a0e133cd.tar data-service-3611f7b1225f66d8d1469d715ba5ad63a0e133cd.tar.gz |
Add some options to the branch page
Add handling for some query parameters to the branch page. This takes
advantage of the improvements for building forms and query parameter
validation.
Diffstat (limited to 'guix-data-service/web/controller.scm')
-rw-r--r-- | guix-data-service/web/controller.scm | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/guix-data-service/web/controller.scm b/guix-data-service/web/controller.scm index 658a317..94b8b5e 100644 --- a/guix-data-service/web/controller.scm +++ b/guix-data-service/web/controller.scm @@ -348,12 +348,27 @@ (view-branches (all-branches-with-most-recent-commit conn)))) ((GET "branch" branch-name) - (apply render-html + (let ((parsed-query-parameters + (parse-query-parameters + request + `((after_date ,parse-datetime) + (before_date ,parse-datetime) + (limit_results ,parse-result-limit #:default 100))))) + (apply + render-html + (if (any-invalid-query-parameters? parsed-query-parameters) + (view-branch branch-name parsed-query-parameters '()) (view-branch branch-name - (most-recent-100-commits-for-branch + parsed-query-parameters + (most-recent-commits-for-branch conn - branch-name)))) + branch-name + #:limit (assq-ref parsed-query-parameters 'limit_results) + #:after-date (assq-ref parsed-query-parameters + 'after_date) + #:before-date (assq-ref parsed-query-parameters + 'before_date))))))) ((GET "gnu" "store" filename) (if (string-suffix? ".drv" filename) (render-derivation conn (string-append "/gnu/store/" filename)) |