diff options
Diffstat (limited to 'src/admin.clj')
| -rw-r--r-- | src/admin.clj | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/admin.clj b/src/admin.clj index 7c7721e..9dbc65c 100644 --- a/src/admin.clj +++ b/src/admin.clj @@ -4,9 +4,29 @@ (:use compojure email scheduled-agent + rooms user utils)) +;; Rooms + +(defn count-room-users [key] + (if-let [r (rooms/lookup-room key)] + (count @(:users r)) + 0)) + + +(defn show-rooms [session] + (if-vip + (let [rooms (do-select ["SELECT * FROM ROOMS ORDER BY CREATED_ON ASC"]) + st (fetch-template "roomlist" session)] + (.setAttribute st "rooms" (for [r rooms] + (stringify-and-escape + (assoc r + :created_on (format-yyyy-mm-dd (:created_on r)) + :users (count-room-users (:key r)))))) + (.toString st)))) + ;; Muting (def *mute-refresh-period-sec* 60) |
