From c14e6d4356a2c4d9981a6808ef19edb66fc96e51 Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Mon, 23 Jun 2014 12:58:10 -0400 Subject: fetch recent users query --- src/admin.clj | 20 +++++++++++++++++++- src/site.clj | 1 + 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/admin.clj b/src/admin.clj index 3a5abe7..1073095 100644 --- a/src/admin.clj +++ b/src/admin.clj @@ -35,6 +35,10 @@ SELECT * FROM users ORDER BY created_on DESC LIMIT 5000 ") +(def fetch-recent-users-query " +SELECT * FROM users WHERE last_login IS NOT NULL ORDER BY last_login DESC LIMIT 1000 +") + (def fetch-active-mutes-query " SELECT m.*, (m.set_on + m.duration) AS expiry, @@ -75,6 +79,9 @@ LIMIT 1 (defn fetch-new-users [] (do-select [fetch-new-users-query])) +(defn fetch-recent-users [] + (do-select [fetch-recent-users-query])) + (defn fetch-active-mutes [] (do-select [fetch-active-mutes-query])) @@ -178,7 +185,7 @@ AND cancelled = false (.setAttribute st "inactive" (f inactive)) (.toString st)))) -;; Recent users list +;; New users list (defn show-users [session params] (if-vip @@ -189,6 +196,17 @@ AND cancelled = false (.setAttribute st "users" (f users)) (.toString st)))) +;; Recent users list + +(defn show-lastlog [session params] + (if-vip + (let [st (fetch-template "users" session) + users (fetch-recent-users) + formatter (partial apply-formats user-formatter) + f #(map (comp stringify-and-escape formatter) %)] + (.setAttribute st "users" (f users)) + (.toString st)))) + ;; Debug Page (defn error-header [& text] diff --git a/src/site.clj b/src/site.clj index b322738..67bb007 100644 --- a/src/site.clj +++ b/src/site.clj @@ -1302,6 +1302,7 @@ WHERE user_id IN (GET "/debug" (debug-page session flash)) (POST "/debug" (debug-commmand! session params)) (GET "/mutes" (show-mutes session params)) + (GET "/users/lastlog" (show-lastlog session params)) (GET "/users" (show-users session params)) (GET "/roomlist" (show-rooms session)) (POST "/mute" (mute! session params)) -- cgit v1.2.3-70-g09d2