Software /
code /
prosody
Comparison
plugins/mod_pubsub/pubsub.lib.lua @ 9096:7de4eec02ece
mod_pubsub: Add access model to configuration form
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 04 Aug 2018 03:38:38 +0200 |
parent | 9076:00d89430d77e |
child | 9102:f3a1ecc46f20 |
comparison
equal
deleted
inserted
replaced
9095:5639dc1a3f85 | 9096:7de4eec02ece |
---|---|
46 ["pubsub#title"] = node_config["title"]; | 46 ["pubsub#title"] = node_config["title"]; |
47 ["pubsub#description"] = node_config["description"]; | 47 ["pubsub#description"] = node_config["description"]; |
48 ["pubsub#max_items"] = tostring(node_config["max_items"]); | 48 ["pubsub#max_items"] = tostring(node_config["max_items"]); |
49 ["pubsub#persist_items"] = node_config["persist_items"]; | 49 ["pubsub#persist_items"] = node_config["persist_items"]; |
50 ["pubsub#notification_type"] = node_config["notification_type"]; | 50 ["pubsub#notification_type"] = node_config["notification_type"]; |
51 ["pubsub#access_model"] = node_config["access_model"]; | |
51 } | 52 } |
52 end | 53 end |
53 | 54 |
54 local function config_from_xep0060(config) | 55 local function config_from_xep0060(config) |
55 return { | 56 return { |
56 ["title"] = config["pubsub#title"]; | 57 ["title"] = config["pubsub#title"]; |
57 ["description"] = config["pubsub#description"]; | 58 ["description"] = config["pubsub#description"]; |
58 ["max_items"] = tonumber(config["pubsub#max_items"]); | 59 ["max_items"] = tonumber(config["pubsub#max_items"]); |
59 ["persist_items"] = config["pubsub#persist_items"]; | 60 ["persist_items"] = config["pubsub#persist_items"]; |
60 ["notification_type"] = config["pubsub#notification_type"]; | 61 ["notification_type"] = config["pubsub#notification_type"]; |
62 ["access_model"] = config["pubsub#access_model"]; | |
61 } | 63 } |
62 end | 64 end |
63 | 65 |
64 local node_config_form = dataform { | 66 local node_config_form = dataform { |
65 { | 67 { |
84 }; | 86 }; |
85 { | 87 { |
86 type = "boolean"; | 88 type = "boolean"; |
87 name = "pubsub#persist_items"; | 89 name = "pubsub#persist_items"; |
88 label = "Persist items to storage"; | 90 label = "Persist items to storage"; |
91 }; | |
92 { | |
93 type = "list-single"; | |
94 name = "pubsub#access_model"; | |
95 label = "Specify the subscriber model"; | |
96 options = { | |
97 { value = "authorize" }, | |
98 { value = "open" }, | |
99 { value = "presence" }, | |
100 { value = "roster" }, | |
101 { value = "whitelist" }, | |
102 }; | |
89 }; | 103 }; |
90 { | 104 { |
91 type = "list-single"; | 105 type = "list-single"; |
92 name = "pubsub#notification_type"; | 106 name = "pubsub#notification_type"; |
93 label = "Specify the delivery style for notifications"; | 107 label = "Specify the delivery style for notifications"; |