From 3cf4af29bc9744f34aed362113dd6f158ec19144 Mon Sep 17 00:00:00 2001 From: dumpfmprod Date: Sun, 3 Oct 2010 07:16:04 -0400 Subject: timb: added redis jar --- bin/repl.bat | 2 +- bin/repl.sh | 2 +- lib/redis-clojure-1.0.4.jar | Bin 0 -> 5811 bytes src/site.clj | 3 ++- src/tags.clj | 20 ++++++++++++++++++++ 5 files changed, 24 insertions(+), 3 deletions(-) create mode 100644 lib/redis-clojure-1.0.4.jar diff --git a/bin/repl.bat b/bin/repl.bat index d1853bf..f178a91 100755 --- a/bin/repl.bat +++ b/bin/repl.bat @@ -1,3 +1,3 @@ REM Windows REPL script SHIFT -java -Xmx320m -server -cp lib/commons-io-1.4.jar;lib/commons-fileupload-1.2.1.jar;lib/commons-codec-1.3.jar;lib/clojure.jar;lib/clojure-contrib.jar;lib/compojure-3.2v3.jar;lib/jetty-6.1.24.jar;lib/jetty-util-6.1.24.jar;lib/servlet-api-2.5-6.1.14.jar;lib/jline-0.9.94.jar;lib/postgresql-8.4-701.jdbc4.jar;lib/stringtemplate-3.2.1.jar;lib/antlr-2.7.7.jar;lib/mail-1.4.4.jar;lib/jdom-1.1.jar;lib/rome-1.0.jar;lib/htmlcleaner-2.1.jar;src/ jline.ConsoleRunner clojure.main -i %0 -r %* \ No newline at end of file +java -Xmx320m -server -cp lib/commons-io-1.4.jar;lib/commons-fileupload-1.2.1.jar;lib/commons-codec-1.3.jar;lib/clojure.jar;lib/clojure-contrib.jar;lib/compojure-3.2v3.jar;lib/jetty-6.1.24.jar;lib/jetty-util-6.1.24.jar;lib/servlet-api-2.5-6.1.14.jar;lib/jline-0.9.94.jar;lib/postgresql-8.4-701.jdbc4.jar;lib/stringtemplate-3.2.1.jar;lib/antlr-2.7.7.jar;lib/mail-1.4.4.jar;lib/jdom-1.1.jar;lib/rome-1.0.jar;lib/htmlcleaner-2.1.jar;lib/redis-clojure-1.0.4.jar;src/ jline.ConsoleRunner clojure.main -i %0 -r %* diff --git a/bin/repl.sh b/bin/repl.sh index 545074d..8e32d98 100755 --- a/bin/repl.sh +++ b/bin/repl.sh @@ -1,3 +1,3 @@ #!/bin/sh -java -Xmx320m -server -cp .:lib/commons-io-1.4.jar:lib/commons-fileupload-1.2.1.jar:lib/commons-codec-1.3.jar:lib/jline-0.9.94.jar:lib/clojure.jar:lib/clojure-contrib.jar:lib/compojure-3.2v3.jar:lib/jetty-6.1.24.jar:lib/jetty-util-6.1.24.jar:lib/servlet-api-2.5-6.1.14.jar:lib/postgresql-8.4-701.jdbc4.jar:lib/stringtemplate-3.2.1.jar:lib/antlr-2.7.7.jar:lib/mail-1.4.4.jar:lib/jdom-1.1.jar:lib/rome-1.0.jar:lib/htmlcleaner-2.1.jar:src/ jline.ConsoleRunner clojure.main -i $1 -r $@ +java -Xmx320m -server -cp .:lib/commons-io-1.4.jar:lib/commons-fileupload-1.2.1.jar:lib/commons-codec-1.3.jar:lib/jline-0.9.94.jar:lib/clojure.jar:lib/clojure-contrib.jar:lib/compojure-3.2v3.jar:lib/jetty-6.1.24.jar:lib/jetty-util-6.1.24.jar:lib/servlet-api-2.5-6.1.14.jar:lib/postgresql-8.4-701.jdbc4.jar:lib/stringtemplate-3.2.1.jar:lib/antlr-2.7.7.jar:lib/mail-1.4.4.jar:lib/jdom-1.1.jar:lib/rome-1.0.jar:lib/htmlcleaner-2.1.jar:lib/redis-clojure-1.0.4.jar:src/ jline.ConsoleRunner clojure.main -i $1 -r $@ diff --git a/lib/redis-clojure-1.0.4.jar b/lib/redis-clojure-1.0.4.jar new file mode 100644 index 0000000..2b7eee9 Binary files /dev/null and b/lib/redis-clojure-1.0.4.jar differ diff --git a/src/site.clj b/src/site.clj index f28aae0..c25a18d 100644 --- a/src/site.clj +++ b/src/site.clj @@ -28,7 +28,8 @@ rooms tags scheduled-agent - user)) + user) + (:require redis)) ; Create image directories if they don't exist. (.mkdir (new File *image-directory*)) diff --git a/src/tags.clj b/src/tags.clj index 299328d..01414e9 100644 --- a/src/tags.clj +++ b/src/tags.clj @@ -247,6 +247,21 @@ WHERE EXISTS AND m.user_id = u.user_id AND r.room_id = m.room_id")) +(defnk fetch-dumps-by-message-id-query [:with-tags true :num-messages 1] (str +" SELECT + m.content, m.message_id, m.created_on, + u.nick, u.avatar, r.key" + (if with-tags ", + array_to_string(ARRAY(SELECT nick || ' ' || tag + FROM tags, users + WHERE message_id = m.message_id AND tags.user_id = users.user_id), ' ') as tags " "") +" FROM messages m, users u, rooms r + WHERE + m.message_id IN (" (str-join ", " (take num-messages (repeat "?"))) ") " + " AND m.user_id = u.user_id + AND r.room_id = m.room_id + ORDER BY m.message_id DESC")) + (defnk fetch-dumps-by-tag-query [:image-only true :message-user-id false :tag-user-id false :with-tags true :include-vip false] (str " SELECT @@ -331,6 +346,11 @@ WHERE EXISTS (let [rows (do-select [query (maybe-parse-int m-id -1)])] (first (map parse-tags-from-row-as-tag-map rows))))) +(defn fetch-dumps-by-ids [ids] + (let [query (fetch-dumps-by-message-id-query :num-messages (count ids)) + rows (do-select (vec (concat [query] ids)))] + (map parse-tags-from-row-as-tag-map rows))) + (defnk fetch-altars [:message-id 0 :user-id false :amount *dumps-per-page* :offset 0] (let [message-id (maybe-parse-int message-id 0) abs-m-id (if (neg? message-id) (- message-id) message-id) -- cgit v1.2.3-70-g09d2