X-Git-Url: https://git.rrq.au/?a=blobdiff_plain;f=manager%2Fusage.lsp;h=3969a3e50ced948fcfdb56e772b95adab91d8c6b;hb=HEAD;hp=89fc09ab9df4bbd36cb6594fb3b95a98a764a527;hpb=05a9c528d8aee0373f52fa1bc72250e7f3625e76;p=rrq%2Fhourglass.git diff --git a/manager/usage.lsp b/manager/usage.lsp index 89fc09a..3969a3e 100644 --- a/manager/usage.lsp +++ b/manager/usage.lsp @@ -1,26 +1,25 @@ (load "expand-string.lsp") +(constant + 'USAGEFILE SITE:control.usage.dat + 'EXTRAFILE SITE:control.extra.dat + ) + (when (= (env "REQUEST_METHOD") "POST") (load "usage-extra.lsp") ) -(define (get-remote-user) - (and (regex "^([^:]+):" (base64-dec (6 (env "HTTP_AUTHORIZATION"))) 0) $1)) - (constant - 'ADMIN (member (get-remote-user) '("ralph" "lin")) - 'USAGE (read-expr (read-file "../usage.dat")) - 'extra-options '(0 10 30 60) - 'EXTRAFILE "../control-extra.dat" + 'USAGE (read-expr (read-file USAGEFILE)) 'EXTRATM (file-info EXTRAFILE 6) - 'TM (date-value) 'EXTRA (and (regex "([0-9]+) ([0-9]+)" (or (read-file EXTRAFILE) "") 0) (list (int $1 0 10) (int $2 0 10))) + 'TM (date-value) + 'extra-options '(0 10 30 60) ) (define (tm2time tm) - (if (> tm) - (letn ((m (/ tm 60)) (h (/ m 60))) (list h (- m (* 60 h)))) + (if (> tm) (letn ((m (/ tm 60)) (h (/ m 60))) (list h (- m (* 60 h)))) '(0 0)) ) @@ -31,5 +30,6 @@ (when (and EXTRATM EXTRA (>= TM EXTRATM)) (setf X (tm2time (- (+ EXTRATM (time2tm EXTRA)) TM)))) +(println "Status 200 OK\nContent-Type: text/html\n\n") (println (expand-file "tmpl/usage-form.html" )) (exit 0)