Annotate

plugins/mod_server_contact_info.lua @ 10390:82705ec87253 0.11

util.startup: Ensure prosody.paths are absolute (see #1430) Normally these paths are injected into the installed 'prosody' executable as absolute paths, but it is possible to override at least the config path via environment variable or command line argument. This makes sure a path relative to pwd stays relative to that instead of the data directory.
author Kim Alvefur <zash@zash.se>
date Mon, 04 Nov 2019 00:29:49 +0100
parent 9428:8e7feec95e8d
child 11010:6b27cb706b89
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8257
c24837f57259 mod_server_contact_info: Import from prosody-modules 2c59f2f0c37d (fixes #778)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
1 -- XEP-0157: Contact Addresses for XMPP Services for Prosody
c24837f57259 mod_server_contact_info: Import from prosody-modules 2c59f2f0c37d (fixes #778)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
2 --
9334
a86736e0163c mod_server_contact_info: Update copyright header
Kim Alvefur <zash@zash.se>
parents: 9333
diff changeset
3 -- Copyright (C) 2011-2018 Kim Alvefur
8257
c24837f57259 mod_server_contact_info: Import from prosody-modules 2c59f2f0c37d (fixes #778)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
4 --
9334
a86736e0163c mod_server_contact_info: Update copyright header
Kim Alvefur <zash@zash.se>
parents: 9333
diff changeset
5 -- This project is MIT/X11 licensed. Please see the
a86736e0163c mod_server_contact_info: Update copyright header
Kim Alvefur <zash@zash.se>
parents: 9333
diff changeset
6 -- COPYING file in the source package for more information.
8257
c24837f57259 mod_server_contact_info: Import from prosody-modules 2c59f2f0c37d (fixes #778)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
7 --
c24837f57259 mod_server_contact_info: Import from prosody-modules 2c59f2f0c37d (fixes #778)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
8
c24837f57259 mod_server_contact_info: Import from prosody-modules 2c59f2f0c37d (fixes #778)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
9 local array = require "util.array";
c24837f57259 mod_server_contact_info: Import from prosody-modules 2c59f2f0c37d (fixes #778)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
10
c24837f57259 mod_server_contact_info: Import from prosody-modules 2c59f2f0c37d (fixes #778)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
11 -- Source: http://xmpp.org/registrar/formtypes.html#http:--jabber.org-network-serverinfo
9333
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
12 local form_layout = require "util.dataforms".new({
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
13 { var = "FORM_TYPE"; type = "hidden"; value = "http://jabber.org/network/serverinfo"; };
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
14 { name = "abuse", var = "abuse-addresses", type = "list-multi" },
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
15 { name = "admin", var = "admin-addresses", type = "list-multi" },
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
16 { name = "feedback", var = "feedback-addresses", type = "list-multi" },
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
17 { name = "sales", var = "sales-addresses", type = "list-multi" },
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
18 { name = "security", var = "security-addresses", type = "list-multi" },
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
19 { name = "support", var = "support-addresses", type = "list-multi" },
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
20 });
8257
c24837f57259 mod_server_contact_info: Import from prosody-modules 2c59f2f0c37d (fixes #778)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
21
9428
8e7feec95e8d mod_server_contact_info: Comment on fallback to using 'admins'
Kim Alvefur <zash@zash.se>
parents: 9334
diff changeset
22 -- JIDs of configured service admins are used as fallback
9333
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
23 local admins = module:get_option_inherited_set("admins", {});
8257
c24837f57259 mod_server_contact_info: Import from prosody-modules 2c59f2f0c37d (fixes #778)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
24
9333
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
25 local contact_config = module:get_option("contact_info", {
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
26 admin = array.collect( admins / function(admin) return "xmpp:" .. admin; end);
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
27 });
8257
c24837f57259 mod_server_contact_info: Import from prosody-modules 2c59f2f0c37d (fixes #778)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
28
9333
fd704adc62e1 mod_server_contact_info: Simplify
Kim Alvefur <zash@zash.se>
parents: 8257
diff changeset
29 module:add_extension(form_layout:form(contact_config, "result"));