annotate plugins/mod_muc_unique.lua @ 14066:b085d32af140 13.0

prosody, prosodyctl: Load loader directly from source directory This should ensure that loader.lua is loaded from the source directory and does the right thing when installed with `make install` There are currently three ways Prosody can be run: - Directly from the source directory, like `./prosody` - Installed with `make install` - Installed into Lua paths with e.g. dh-lua or luarocks In the first two cases, Lua search paths need to include the source directory and ensure that `require "prosody.util.json"` ends up loading `util/json.lua` relative to the installation (CFG_SOURCEDIR) or the source checkout. Finally, in the last case where Prosody resources are installed under the 'prosody.*' namespace in regular Lua search paths, then loader.lua should activate the compatibility mode that makes sure that both `require"util.json"` and `require"prosody.util.json"` both resolve to `(one path from of package.path)/prosody/util/json.lua`
author Kim Alvefur <zash@zash.se>
date Mon, 09 Feb 2026 16:59:42 +0100
parents 74b9e05af71e
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6091
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
1 -- XEP-0307: Unique Room Names for Multi-User Chat
12977
74b9e05af71e plugins: Prefix module imports with prosody namespace
Kim Alvefur <zash@zash.se>
parents: 8878
diff changeset
2 local st = require "prosody.util.stanza";
74b9e05af71e plugins: Prefix module imports with prosody namespace
Kim Alvefur <zash@zash.se>
parents: 8878
diff changeset
3 local unique_name = require "prosody.util.id".medium;
6091
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
4 module:add_feature "http://jabber.org/protocol/muc#unique"
6409
5fd6c739e9bf plugins/mod_muc_unique: Fix undefined global access (thanks Lance)
Waqas Hussain <waqas20@gmail.com>
parents: 6091
diff changeset
5 module:hook("iq-get/host/http://jabber.org/protocol/muc#unique:unique", function(event)
6091
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
6 local origin, stanza = event.origin, event.stanza;
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
7 origin.send(st.reply(stanza)
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
8 :tag("unique", {xmlns = "http://jabber.org/protocol/muc#unique"})
8878
7c3e16fdaf1d mod_muc_unique: Use util.id for more compact identifiers
Kim Alvefur <zash@zash.se>
parents: 6409
diff changeset
9 :text(unique_name():lower())
6091
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
10 );
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
11 return true;
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
12 end,-1);