diff options
| author | dumpfmprod <dumpfmprod@ubuntu.(none)> | 2010-07-02 12:00:33 -0400 |
|---|---|---|
| committer | dumpfmprod <dumpfmprod@ubuntu.(none)> | 2010-07-02 12:00:33 -0400 |
| commit | 5b2139d5a747f37264160b43b4c776846b54cb74 (patch) | |
| tree | f5f6d62c19534eba8fe21910c83bb479272ae12d | |
| parent | c6b42bda5b4ec59b50f4922c77212a958a74ccfa (diff) | |
| parent | 1adc9eb0fd5bc0b913709da96d730d7293bf39b2 (diff) | |
Merge branch 'master' of /pichat/repo
| -rw-r--r-- | src/site.clj | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/site.clj b/src/site.clj index 94abd6c..5a3b485 100644 --- a/src/site.clj +++ b/src/site.clj @@ -541,7 +541,8 @@ FROM users u (def popular-dumps-qry " select u.nick, u.avatar, r.key, m.message_id, m.content, m.created_on, count(*) as count, array_agg(u2.nick) as user_nicks, - array_agg(u2.avatar) as user_avs + array_agg(u2.avatar) as user_avs, + array_agg(t.created_on) as favtime from users u, messages m, rooms r, tags t, users u2 where lower(u.nick) = lower(?) and u.user_id = m.user_id and m.message_id = t.message_id @@ -554,10 +555,14 @@ order by count desc limit 20 offset 0") (defn get-popular-dumps [nick] (for [d (do-select [popular-dumps-qry nick])] (assoc d - :favers (map (fn [n a] {:nick n :avatar a}) - (.getArray (:user_nicks d)) - (.getArray (:user_avs d))) - :user_nicks nil :user_avs nil))) + :favers (sort-by :t (comp #(* -1 %) compare) + (map (fn [n a t] (if (non-empty-string? a) + {:nick n :avatar a :t t} + {:nick n :t t})) + (.getArray (:user_nicks d)) + (.getArray (:user_avs d)) + (.getArray (:favtime d)))) + :user_nicks nil :user_avs nil :favtime nil))) (defn popular [session profile-nick] (if-let [user-info (fetch-nick profile-nick)] |
