summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsrc/site.clj24
-rw-r--r--template/directory.st7
2 files changed, 23 insertions, 8 deletions
diff --git a/src/site.clj b/src/site.clj
index e5107e5..e68d2ad 100755
--- a/src/site.clj
+++ b/src/site.clj
@@ -437,6 +437,8 @@
(cond (= offset 0) (.setAttribute st "prev" false)
(= offset 1) (.setAttribute st "prev" "")
:else (.setAttribute st "prev" (str "/" (dec offset))))
+ (if (> offset 0)
+ (.setAttribute st "cur" offset))
(.setAttribute st "next" (str "/" (inc offset)))
(if (zero? (count @*directory-listing*))
(.setAttribute st "notloaded" true))
@@ -658,6 +660,17 @@
(log session (@rooms room-key) offset params)
(resp-error "UNKNOWN_ROOM")))
+;; Account resets
+
+(defn reset-page [session]
+ )
+
+(defn reset-account-request! [session params]
+ )
+
+(defn reset-account! [session key]
+ )
+
;; Upload
(def *max-image-height* 2000)
@@ -724,10 +737,6 @@
(not (validate-room-access room-key session)) [200 "UNKNOWN_ROOM"]
:else (do-upload session image (@rooms room-key)))))
-(defn copy-and-resize [image dest]
- ; TODO: resize
- (copy image dest))
-
;; N.B. -- Upload responses aren't JSON-evaluated
(defn do-upload-avatar [session image]
(let [filename (format-filename (:filename image) (session :nick))
@@ -735,7 +744,7 @@
dest (open-file [*avatar-directory* date] filename)
url (image-url-from-file "avatars" date dest)]
(do
- (copy-and-resize (:tempfile image) dest)
+ (copy (:tempfile image) dest)
(update-user-db (session :user_id) "avatar" url)
[(session-assoc :avatar url)
[200 url]])))
@@ -794,7 +803,7 @@
(-> request :route-params :room)
(-> request :route-params :offset)
params))
- ;; TODO: validate POST Referrer headers for POSTs
+ ;; TODO: add form tokens for all destructive actions
(POST "/msg" (validated-msg session params))
(POST "/submit-registration" (register session params))
(POST "/update-profile" (update-profile session params))
@@ -804,6 +813,9 @@
(GET "/directory" (directory session 0))
(GET "/directory/:offset"
(directory session (maybe-parse-int (-> request :route-params :offset) 0)))
+ (GET "/reset" (reset-page session))
+ (POST "/reset-request" (reset-account-request! session params))
+ (POST "/reset/:key" (reset-account! session (-> request :route-params :key)))
(GET "/about_us" (serve-template "about_us" session))
(GET "/goodies" (serve-template "goodies" session))
(GET "/help" (serve-template "help" session))
diff --git a/template/directory.st b/template/directory.st
index 85d6a8c..1296edf 100644
--- a/template/directory.st
+++ b/template/directory.st
@@ -1,7 +1,10 @@
<html>
<head>
-
- <title>dump.fm</title>
+ $if(cur)$
+ <title>dump.fm directory [$cur$]</title>
+ $else$
+ <title>dump.fm directory</title>
+ $endif$
$head()$
<link rel="stylesheet" type="text/css" href="/static/directory.css">
<script>