]> git.armaanb.net Git - bettersearch.git/blob - server.rkt
Add basic web server stuff
[bettersearch.git] / server.rkt
1 #lang racket
2
3 (require web-server/servlet)
4 (require web-server/formlets)
5 (require web-server/servlet-env)
6
7 (require "bettersearch.rkt")
8
9 (define-values (dispatch generate-url)
10   (dispatch-rules
11     [("")       do-index]
12     [("search") do-search]
13     ))
14
15 (define (do-search req)
16   (define binds (request-bindings req))
17   (define query (if
18                   (exists-binding? 'q binds)
19                   (extract-binding/single 'q binds)
20                   ""))
21
22   (if (non-empty-string? query)
23     (response/xexpr `(html
24                        (h1 "Search results")
25                        (fetch-results query)
26                        ))
27     (response/xexpr `(html
28                        (h1 "ho")
29                        ))
30     )
31   )
32
33 (serve/servlet dispatch
34                #:command-line? #t
35                #:servlet-regexp #rx"")