diff options
| author | sostler <sbostler@gmail.com> | 2010-01-29 01:51:48 -0500 |
|---|---|---|
| committer | sostler <sbostler@gmail.com> | 2010-01-29 01:51:48 -0500 |
| commit | 65f06c8d8593881f10d767dd0610ca6f63569f56 (patch) | |
| tree | 62b1dfe4650a0ecce5fe1131a447c44756d37fd9 /src | |
| parent | 99cc0ef49a1d087401dbd8e1cfabc7c8d5cc2104 (diff) | |
Added upload to main chat
Diffstat (limited to 'src')
| -rwxr-xr-x | src/site.clj | 41 |
1 files changed, 22 insertions, 19 deletions
diff --git a/src/site.clj b/src/site.clj index 1d55ac7..15ac373 100755 --- a/src/site.clj +++ b/src/site.clj @@ -316,10 +316,11 @@ ;; Chat -(defn validate-room-access [room session] - (and room - (or (not (room :admin_only)) - (session :is_admin)))) +(defn validate-room-access [room-key session] + (let [room (@rooms room-key)] + (and room + (or (not (room :admin_only)) + (session :is_admin))))) (defn chat [session room] (let [now (System/currentTimeMillis) @@ -344,10 +345,9 @@ (.toString st))) (defn validated-chat [session room-key] - (let [room (@rooms room-key)] - (if (validate-room-access room session) - (chat session room) - (resp-error "UNKNOWN_ROOM")))) + (if (validate-room-access room-key session) + (chat session (@rooms room-key)) + (resp-error "UNKNOWN_ROOM"))) (defn refresh [session params room] (dosync @@ -365,8 +365,7 @@ (defn validated-refresh [session params] (let [room-key (params :room) room (@rooms room-key)] - (if (and room - (or (not (room :admin_only)) (session :is_admin))) + (if (validate-room-access room-key session) (refresh session params room) (resp-error "UNKNOWN_ROOM")))) @@ -409,11 +408,9 @@ (resp-success msg-id))))) (defn validated-msg [session params] - (let [room-key (params :room) - room (@rooms room-key)] - (if (validate-room-access room session) - (msg session params) - (resp-error "UNKNOWN_ROOM")))) + (if (validate-room-access (params :room) session) + (msg session params) + (resp-error "UNKNOWN_ROOM"))) ;; Browser @@ -464,10 +461,9 @@ (.toString st))) (defn validated-log [session room-key offset params] - (let [room (@rooms room-key)] - (if (validate-room-access room session) - (log session room offset params) - (resp-error "UNKNOWN_ROOM")))) + (if (validate-room-access room-key session) + (log session (@rooms room-key) offset params) + (resp-error "UNKNOWN_ROOM"))) ;; Upload @@ -476,6 +472,8 @@ subbed (re-gsub #"[^\w.-]" "" spaceless)] (str (System/currentTimeMillis) "-" subbed))) +;; TODO: enforce + (defn upload [session params] (if (not (session :nick)) [404 "NOT_LOGGED_IN"] @@ -492,6 +490,11 @@ (add-message msg room))) [200 image-url]))) +(defn validated-upload [session params] + (if (validate-room-access (params :room) session) + (upload session params) + (resp-error "UNKNOWN_ROOM"))) + ;; 404 (defn unknown-page [params] |
