summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorsostler <sbostler@gmail.com>2010-02-10 01:50:49 -0500
committersostler <sbostler@gmail.com>2010-02-10 01:50:49 -0500
commitdf8facec107abe15a37b6d747bc87be06124f224 (patch)
tree315839bda881fbe5f406986ffba182515e8b8873 /src
parent71de79d5c650fab0bbaffe24f450e7fed9605c42 (diff)
Added remember-me links
Diffstat (limited to 'src')
-rwxr-xr-xsrc/site.clj17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/site.clj b/src/site.clj
index f10f925..996fe4e 100755
--- a/src/site.clj
+++ b/src/site.clj
@@ -264,6 +264,13 @@
(set-cookie :token "dummy"
:expires "Thu, 01-Jan-70 00:00:01 GMT"))
+(defn set-login-token
+ [nick hash]
+ (set-cookie :token (generate-login-token nick hash)
+ :expires (gmt-string (new Date
+ (+ (System/currentTimeMillis)
+ *login-cookie-duration*)))))
+
(defn apply-login-info
[request user-info]
(let [req-cookies (request :cookies)
@@ -308,13 +315,13 @@
(let [nick (params :nick)
hash (params :hash)
db-user (authorize-nick-hash nick hash)
- remember-me (params :rememberme)]
+ remember-me (= (params :rememberme) "yes")
+ login-cookie (if remember-me
+ (set-login-token nick hash)
+ (clear-login-token))]
(if db-user
[(session-assoc-from-db db-user)
- (set-cookie :token (generate-login-token nick hash)
- :expires (gmt-string (new Date
- (+ (System/currentTimeMillis)
- *login-cookie-duration*))))
+ login-cookie
(resp-success "OK")]
(resp-error "BAD_LOGIN"))))