aboutsummaryrefslogtreecommitdiff
path: root/cgi-bin/dict.cgi.in
diff options
context:
space:
mode:
Diffstat (limited to 'cgi-bin/dict.cgi.in')
-rw-r--r--cgi-bin/dict.cgi.in40
1 files changed, 22 insertions, 18 deletions
diff --git a/cgi-bin/dict.cgi.in b/cgi-bin/dict.cgi.in
index cbe2646..04eccd1 100644
--- a/cgi-bin/dict.cgi.in
+++ b/cgi-bin/dict.cgi.in
@@ -515,24 +515,28 @@
;;;
(define (dict-html)
- (do ((line (read-line) (read-line)))
- ((eof-object? line) #f)
- (cond
- ((string=? line "@@dict@@")
- (main-form)
- (dict-search))
- ((string=? line "@@stat_updated@@")
- (display (stat #:updated)))
- ((string=? line "@@stat_count@@")
- (display
- (let ((s (stat #:count)))
- (if (string=? s "<>")
- s
- (let ((n (string->number s)))
- (string-append s " " (ngettext "λέξη" "λέξεις" n)))))))
- (else
- (display line)
- (newline)))))
+ (let ((explist (list
+ (cons "@@dict@@"
+ (lambda ()
+ (main-form)
+ (dict-search)))
+ (cons "@@stat_updated@@"
+ (lambda ()
+ (display (stat #:updated))))
+ (cons "@@stat_count@@"
+ (lambda ()
+ (display
+ (let ((s (stat #:count)))
+ (if (string=? s "<>")
+ s
+ (let ((n (string->number s)))
+ (string-append s " "
+ (ngettext "λέξη" "λέξεις"
+ n)))))))))))
+ (do ((line (read-line) (read-line)))
+ ((eof-object? line) #f)
+ (expand-template explist line)
+ (newline))))
;;; Main
(display "Content-type: text/html; charset=utf-8\r\n\r\n")

Return to:

Send suggestions and report system problems to the System administrator.