10153dfdf5eb65f4e25bdcedf3d0990180a94d13
[rrq/hourglass.git] / manager / controls.lsp
1 ; Load and present control.dat
2
3 (load "expand-string.lsp")
4
5 (constant
6  'CONTROLFILE SITE:control.dat
7  )
8
9 (setf UPDATE "")
10
11 (when (= (env "REQUEST_METHOD") "POST")
12   (load "controls-update.lsp")
13   )
14
15 (constant
16  'CONTROL (read-expr (read-file CONTROLFILE))
17  'GAP (or (lookup 'gap CONTROL) 5)
18  'CLIP (or (lookup 'clip CONTROL) 5)
19  'TIMES (map (fn (n) (or (assoc n CONTROL) '(1 timed (7 0) (3 0) (19 0))))
20              (sequence 1 7))
21  )
22
23 (setf
24  DAYS '(0 "Mon" "Tue" "Wed" "Thu" "Fri" "Sat" "Sun")
25  gap-options '(0 1 2 5 10 15 30)
26  clip-options '(0 200 500 800 1000 1200 1500 2000)
27  mode-options '("opened" "timed" "closed")
28  start-options '()
29  end-options '()
30  limit-options '()
31  )
32 (dotimes (h 24) (dolist (m '(0 30))
33                   (push (format "%02d:%02d" h m) start-options -1)))
34 (dotimes (h 24) (dolist (m '(0 30))
35                   (push (format "%02d:%02d" h m) end-options -1)))
36 (for (h 1 8) (dolist (m '(0 30))
37                (push (format "%02d:%02d" h m) limit-options -1)))
38
39 (println "Status 200 OK\nContent-Type: text/html\n\n")
40 (println (expand-file "tmpl/controls-form.html" ))
41 (exit 0)