summaryrefslogtreecommitdiff
path: root/src/site.clj
diff options
context:
space:
mode:
Diffstat (limited to 'src/site.clj')
-rw-r--r--src/site.clj44
1 files changed, 6 insertions, 38 deletions
diff --git a/src/site.clj b/src/site.clj
index b7b8787..90db5dc 100644
--- a/src/site.clj
+++ b/src/site.clj
@@ -117,27 +117,6 @@
(if-not (:admin_only msg)
msg)))
-;; User-id/nick cache
-;; I keep needing to grab user-id from a nick so I thought I'd cache them
-;; sostler todo: will replace this w/ user/user-id-cache soon
-(def *user-id-cache* (ref {}))
-(def *user-id-cache-size* 500)
-
-(defn user-id-from-nick [nick]
- (let [nick (lower-case nick)
- found (@*user-id-cache* nick)]
- (if found
- found
- (let [query (str "SELECT user_id FROM users WHERE lower(nick) = ?")
- res (first (do-select [query nick]))]
- (if (nil? res)
- nil
- (let [found (res :user_id)]
- (dosync
- (if (> (count @*user-id-cache*) *user-id-cache-size*) (ref-set *user-id-cache* {}))
- (alter *user-id-cache* assoc nick found))
- found))))))
-
;; Login code
(defn session-map-from-db
@@ -353,26 +332,15 @@ WHERE user_id IN
(.toString st)))
(resp-error "NO_USER"))))
-(defn update-user-db [user-id attr val]
- (with-connection *db*
- (update-values "users" ["user_id = ?" user-id] {attr val}))
- (update-cache! user-id attr val))
-
-(defn update-avatar [session url]
- (update-user-db (session :user_id) "avatar" url)
- [(session-assoc :avatar url)
- (resp-success url)])
-
(defn update-profile [session params]
- (let [user-id (session :user_id)
- attr (params :attr)
- val (params :val)
- attr-set #{"avatar" "contact" "bio"}]
+ (let [user-id (session :user_id)
+ attr (params :attr)
+ val (params :val)
+ attr-set #{"contact" "bio"}]
(cond (not user-id) (resp-error "MUST_LOGIN")
(not (and user-id attr val)) (resp-error "BAD_REQUEST")
(not (contains? attr-set attr)) (resp-error "BAD_REQUEST")
- (= attr "avatar") (update-avatar session val)
- :else (do (update-user-db user-id attr val)
+ :else (do (update-user-info! (:nick session) user-id attr val)
(resp-success "OK")))))
;; Generic Handler
@@ -1133,7 +1101,7 @@ WHERE user_id IN
url (image-url-from-file "avatars" date dest)]
(do
(copy (:tempfile image) dest)
- (update-user-db (session :user_id) "avatar" url)
+ (update-user-info! (:nick session) (:user_id session) "avatar" url)
[(session-assoc :avatar url)
[200 url]])))