mod_component: Look for the correct xmlns (thanks NebuK)
[prosody.git] / plugins / mod_vcard.lua
index f1c95bbf73ebf34e66a29e819ca3e9906cb9987f..d3c27cc0c401bc1e3d0d1eb18f6a0b57d5066790 100644 (file)
@@ -1,24 +1,18 @@
 -- Prosody IM
--- Copyright (C) 2008-2009 Matthew Wild
--- Copyright (C) 2008-2009 Waqas Hussain
+-- Copyright (C) 2008-2010 Matthew Wild
+-- Copyright (C) 2008-2010 Waqas Hussain
 -- 
 -- This project is MIT/X11 licensed. Please see the
 -- COPYING file in the source package for more information.
 --
 
-local hosts = _G.hosts;
-local datamanager = require "util.datamanager"
-
 local st = require "util.stanza"
-local t_concat, t_insert = table.concat, table.insert;
-
-local jid = require "util.jid"
-local jid_split = jid.split;
+local jid_split = require "util.jid".split;
+local datamanager = require "util.datamanager"
 
-local xmlns_vcard = "vcard-temp";
-module:add_feature(xmlns_vcard);
+module:add_feature("vcard-temp");
 
-function handle_vcard(event)
+local function handle_vcard(event)
        local session, stanza = event.origin, event.stanza;
        local to = stanza.attr.to;
        if stanza.attr.type == "get" then
@@ -52,20 +46,8 @@ end
 module:hook("iq/bare/vcard-temp:vCard", handle_vcard);
 module:hook("iq/host/vcard-temp:vCard", handle_vcard);
 
--- COMPAT: https://support.process-one.net/browse/EJAB-1045
-if module:get_option("vcard_compatibility") then
-       module:hook("iq/full", function(data)
-               local stanza = data.stanza;
-               local payload = stanza.tags[1];
-               if stanza.attr.type == "get" or stanza.attr.type == "set" and payload.name == "vCard" and payload.attr.xmlns == xmlns_vcard then
-                       return handle_vcard(data);
-               end
-       end, 1);
+-- COMPAT w/0.8
+if module:get_option("vcard_compatibility") ~= nil then
+       module:log("error", "The vcard_compatibility option has been removed, see"..
+               "mod_compat_vcard in prosody-modules if you still need this.");
 end
-
-local feature_vcard = st.stanza("feature", { var = xmlns_vcard });
-module:add_event_hook("stream-features", function(session, features)
-       if session.type == "c2s" then
-               features:add_child(feature_vcard);
-       end
-end);