diff options
Diffstat (limited to 'src/site.clj')
| -rw-r--r-- | src/site.clj | 73 |
1 files changed, 4 insertions, 69 deletions
diff --git a/src/site.clj b/src/site.clj index 3ec07a5..663a6df 100644 --- a/src/site.clj +++ b/src/site.clj @@ -306,65 +306,6 @@ WHERE user_id IN [(session-assoc-from-db db-user) (resp-success "OK")]))))) -;; Fav scores - -(def *score-query* " -SELECT u.user_id, - u.nick, - COUNT(*) AS cnt -FROM tags t, - messages m, - users u -WHERE t.message_id = m.message_id - AND m.user_id != t.user_id - AND m.user_id = u.user_id -GROUP BY u.user_id, u.nick -ORDER BY cnt DESC -") - -(defn build-score-list [] - (let [res (vec (do-select [*score-query*]))] - {:list res - :map (zipmap (map :nick res) (map :cnt res))})) - -;; sostler: stop score refresh until redis cache can be added -(def *scores-refresh-period-sec* (* 29 60 9999999)) - -(def *user-scores* - (scheduled-agent build-score-list - *scores-refresh-period-sec* - [])) - -(def *piece-map* - (zipmap - [:pawn :knight :bishop :rook :queen :king :skull] - ["♟" "♞" "♝" "♜" "♛" "♚" "☠"])) - -(defn score-to-piece [score] - (cond (= score -1) :skull - (= score 0) :pawn - (< score 50) :knight - (< score 150) :bishop - (< score 300) :rook - (< score 1000) :queen - :else :king)) - -(def score-to-entity (comp *piece-map* score-to-piece)) - -(defn lookup-score [nick] - (if (= (lower-case nick) "scottbot") - -1 - (let [scores (:map (poll *user-scores*))] - (get scores nick 0)))) - -(defn get-user-ranking [offset num] - (if-let [ranking (:list (poll *user-scores*))] - (let [cnt (count ranking)] - (subvec ranking - (min cnt (* offset num)) - (min cnt (* (inc offset) num)))))) - - ;; Profile (defn pull-random-dump-images [dumps num] @@ -375,8 +316,6 @@ ORDER BY cnt DESC (comp take-images :content) dumps)))))) -(def use-redis-favscore true) - (defn profile ([session profile-nick] (profile session profile-nick "profile")) ([session profile-nick template] @@ -386,9 +325,7 @@ ORDER BY cnt DESC nick (:nick session) logger (make-time-logger) is-home (and nick (= nick profile-nick)) - score (if use-redis-favscore - (fetch-redis-favscore profile-nick) - (lookup-score profile-nick)) + score (fetch-redis-favscore profile-nick) dumps (logger tags/fetch-dumps :user-tag-id (:user_id session) :nick profile-nick @@ -457,9 +394,7 @@ ORDER BY cnt DESC (defn build-mini-profile [user-info] (let [st (fetch-template-fragment "mini_profile") nick (user-info :nick) - score (if use-redis-favscore - (fetch-redis-favscore nick) - (lookup-score nick))] + score (fetch-redis-favscore nick)] (doseq [a [:nick :avatar :contact :bio]] (let [v (user-info a)] (.setAttribute st (name a) @@ -1441,7 +1376,7 @@ ORDER BY cnt DESC (start-user-flusher!) (start-session-pruner!) -(if (not= *server-url* "http://dump.fm") - (start! random-poster)) +;(if (not= *server-url* "http://dump.fm") +; (start! random-poster)) |
