Mercurial > prosody-modules
view mod_server_contact_info/mod_server_contact_info.lua @ 2608:362ca94192ee
mod_smacks: Add resumed session to event "smacks-hibernation-end"
Older versions of this event only have the "intermediate" session
in event.session (the one used to resume the existing session),
but not the resumed one.
This adds event.resumed which contains the resumed one alongside
to event.session.
author | tmolitor <thilo@eightysoft.de> |
---|---|
date | Sat, 11 Mar 2017 01:37:28 +0100 |
parents | d6a3362ca256 |
children | d18a91c030df |
line wrap: on
line source
-- XEP-0157: Contact Addresses for XMPP Services for Prosody -- -- Copyright (C) 2011-2016 Kim Alvefur -- -- This file is MIT/X11 licensed. -- local t_insert = table.insert; local array = require "util.array"; local df_new = require "util.dataforms".new; -- Source: http://xmpp.org/registrar/formtypes.html#http:--jabber.org-network-serverinfo local valid_types = { abuse = true; admin = true; feedback = true; sales = true; security = true; support = true; } local contact_config = module:get_option("contact_info"); if not contact_config or not next(contact_config) then -- we'll use admins from the config as default local admins = module:get_option_inherited_set("admins", {}); if admins:empty() then module:log("error", "No contact_info or admins set in config"); return -- Nothing to attach, so we'll just skip it. end module:log("debug", "No contact_info in config, using admins as fallback"); contact_config = { admin = array.collect( admins / function(admin) return "xmpp:" .. admin; end); }; end local form_layout = { { value = "http://jabber.org/network/serverinfo"; type = "hidden"; name = "FORM_TYPE"; }; }; local form_values = {}; for t in pairs(valid_types) do local addresses = contact_config[t]; if addresses then t_insert(form_layout, { name = t .. "-addresses", type = "list-multi" }); local values = {}; if type(addresses) ~= "table" then values[1] = { value = addresses }; else for i, address in ipairs(addresses) do values[i] = { value = address }; end end form_values[t .. "-addresses"] = values; end end module:add_extension(df_new(form_layout):form(form_values, "result"));