diff --git a/guix-data-service/web/html-utils.scm b/guix-data-service/web/html-utils.scm
index a987984..af8c2d8 100644
--- a/guix-data-service/web/html-utils.scm
+++ b/guix-data-service/web/html-utils.scm
@@ -16,9 +16,13 @@
;;; .
(define-module (guix-data-service web html-utils)
+ #:use-module (srfi srfi-1)
#:use-module (ice-9 match)
+ #:use-module (guix-data-service web query-parameters)
#:export (sexp-div
+ next-page-link
+
build-status-value->display-string
build-status-span
build-status-alist->build-icon))
@@ -38,6 +42,19 @@
((and string val)
val)))
+(define (next-page-link path
+ query-parameters
+ field
+ value)
+ (string-append
+ path
+ "?"
+ (query-parameters->string
+ `((,field . ,value)
+ ,@(alist-delete
+ field
+ query-parameters)))))
+
(define (build-status-value->display-string value)
(assoc-ref
'(("scheduled" . "Scheduled")