--- a/mod_muc_log/mod_muc_log.lua Sun Nov 01 14:37:28 2009 +0100
+++ b/mod_muc_log/mod_muc_log.lua Sun Nov 01 16:42:04 2009 +0100
@@ -13,6 +13,8 @@
local data_load, data_store, data_getpath = datamanager.load, datamanager.store, datamanager.getpath;
local datastore = "muc_log";
local config = {};
+local verifyAuthRequest = module:require "verifyhttpauth".verifyHttpAuthRequest;
+
--[[ LuaFileSystem
@@ -421,7 +423,7 @@
return generateDayListSiteContentByRoom(bareRoomJid); -- fallback
end
end
-
+local requests = {};
function handle_request(method, body, request)
local query = splitQuery(request.url.query);
local node, host = grepRoomJid(request.url.path);
@@ -437,7 +439,17 @@
if room._data ~= nil and room._data.subject ~= nil then
subject = room._data.subject;
end
- return createDoc(parseDay(bare, subject, query));
+ local doc = createDoc(parseDay(bare, subject, query));
+ local id = "thisIsTheId";
+ requests[id] = request;
+ requests[id].doc = doc;
+
+ verifyAuthRequest(request.url.path .. "?" .. request.url.query, "thilo@cestona.ro", id, function (id, confirmed)
+ if confirmed and requests[id] then
+ requests[id].send(requests[id].doc);
+ end
+ end)
+ return true;
end
else
return createDoc(generateRoomListSiteContent());
@@ -448,7 +460,7 @@
return;
end
-config = config_get(module:get_host(), "core", "muc_log");
+config = config_get(module:get_host(), "core", "muc_log") or {};
httpserver.new_from_config({ config.http_port or true }, handle_request, { base = "muc_log" });