Matthew Wild
c83e3a24ae
mod_muc/muc.lib: Fix parameters to send_history() (thanks Peter Villeneuve)
12 years ago
daurnimator
940094d4fa
plugins/muc: Move 'module:get_option_number("max_history_messages")' from mod_muc into history lib; remove from muclib exports
12 years ago
daurnimator
51e7021e0c
plugins/muc: Add room:has_occupant() method
12 years ago
daurnimator
09fa17a7ef
plugins/muc/muc.lib: Move sending of occupant list to joining user out of hook, and into main flow: It has to occur before publication of their status
12 years ago
daurnimator
126eb3e5b9
plugins/muc/muc.lib: Remove reversed conditionals when firing pre- events
12 years ago
daurnimator
544685b84c
plugins/muc/muc.lib: When user leaves; set their role to nil
12 years ago
daurnimator
7c55b4a2e2
plugins/muc: Move 'moderated' code to seperate file; changes default "muc-get-default-role" behaviour
12 years ago
daurnimator
aa2da859d0
plugins/muc: Move 'hidden' ('public') code to own file
12 years ago
daurnimator
68f64d2817
plugins/muc: Move subject code to seperate module
12 years ago
daurnimator
bc3b5d98d5
plugins/muc/muc.lib: Refactor subject logic; fix bug of mixed up subject/author
12 years ago
daurnimator
0f4dd8a1b5
plugins/muc: Move persistent room configuration to own module
12 years ago
daurnimator
cd72b2acc4
plugins/muc/muc.lib: Move members_only into seperate file
12 years ago
daurnimator
0b749352c2
plugins/muc/muc.lib: Turn get_default_role into an event
12 years ago
daurnimator
d9474e875f
plugins/muc/muc.lib: Fix getting a list of occupants by role (it was sending presences instead of items inside an iq)
12 years ago
daurnimator
adb653030f
plugins/muc: Move valid_roles, valid_affiliations and is_kickable_error to new muc/util module
12 years ago
daurnimator
e14f89d1d2
plugins/muc/muc.lib: Use util.iterators to count occupants
12 years ago
daurnimator
185f0d3326
plugins/muc/muc.lib: Move occupancy check to later in `deconstruct_stanza_id`: As vcards are from the bare jid, you need to use the `from_jid` out of the encoded `id`
12 years ago
daurnimator
b661ecb24f
plugins/muc: Move history to an external module
...
This resulted in the split up of the main muc-occupant-joined event handler into 3 seperate ones, handling occupant list, history and subject
12 years ago
daurnimator
bae30c03d4
plugins/muc: Move `whois` code to seperate file
12 years ago
daurnimator
b1cf3db9a1
plugins/muc/muc.lib: Remember to coerce nil role to "none"
12 years ago
daurnimator
25e6558aaf
plugins/muc/muc.lib: Refactor of change-nick presence handling
...
- Allow `nick` to be passed to `publicise_occupant_status`.
- Moves multi-session handling to a more 'edge-case' area of code
12 years ago
daurnimator
13c9f3da90
plugins/muc/muc.lib: Clean up whois handling
...
- adds functions `can_see_real_jids` and `get_base_presence`
- In `publicise_occupant_status`, we don't generate each type of presence until it's used
12 years ago
daurnimator
538ed6fc20
plugins/muc: Move name functions to seperate module
12 years ago
daurnimator
7f0b9f176b
plugins/muc: Move password functions to seperate module
12 years ago
daurnimator
fd4362f97d
plugins/muc: Move locking to seperate module
12 years ago
daurnimator
906e490039
plugins/muc/muc.lib: Move description functions out to own file
12 years ago
daurnimator
1782c1a4b9
plugins/muc/muc.lib: Modify muc-config-submitted to keep a list of status codes instead of fields changed
12 years ago
daurnimator
5f51a5c88a
plugins/muc/muc.lib: Refactor out process_form into hooks
12 years ago
daurnimator
65b712f91d
plugins/muc/muc.lib: Move default config layout into hooks
12 years ago
daurnimator
b06bdb9b7d
plugins/muc/muc.lib: Split up get_disco_info into events
...
This was done so we can split off functionality to other files later (e.g. plugins/muc/password)
12 years ago
Waqas Hussain
f701f760d1
MUC: Fixed traceback when a JID not in a room requested a role change for an occupant.
12 years ago
daurnimator
fbae511358
plugins/muc/muc.lib: Add muc-room-locked event
12 years ago
daurnimator
2c3dad0416
plugins/muc/muc.lib: restrict invitations in members only rooms to admins
12 years ago
daurnimator
e19853af0e
plugins/muc/muc.lib: Don't try and get occupant jids for annotating invite affiliation changes
12 years ago
daurnimator
8b8f89703e
plugins/muc/muc.lib: Update declines to be more like invites
12 years ago
daurnimator
b3f385662f
plugins/muc/muc.lib: Add pre-invite event. Move role check to it
12 years ago
daurnimator
0cfac6e454
plugins/muc/muc.lib: Tidy up muc-invite event.
...
- Send inside of the actual handle_invite function
- Move password, compat and body tagging into event handlers
12 years ago
daurnimator
eb0739676f
plugins/muc/muc.lib: Remove top level pre-join event. Assign event priorities for other handlers
12 years ago
daurnimator
d0e5de9af2
plugins/muc/muc.lib: Use occupant methods where possible
12 years ago
daurnimator
672d0fae0b
plugins/muc/muc.lib: Subjects get sent even if empty.
12 years ago
daurnimator
7cbdc2b0f7
plugins/muc/muc.lib: Fix typo (moderators vs moderator)
12 years ago
daurnimator
5d2b35e070
plugins/muc/muc.lib: nick change unavailables should be from original occupant jid
12 years ago
daurnimator
ac04e20d3b
plugins/muc/muc.lib: Status codes should be inside of x element
12 years ago
daurnimator
f090e4edda
plugins/muc/muc.lib: Improve set affiliation logic;
...
- Each affiliation and role is now ranked
- Changes up in affiliation will not downgrade your role
- Now sends a new set of presences if you gained moderator in a semi-anonymous room.
- Better input validation; matches closer with ':set_role'
- Don't short circuit; as if user has non-default role they will not get updated
12 years ago
daurnimator
09dc06b54e
plugins/muc/muc.lib: Smarter validation in set_affiliation
12 years ago
daurnimator
97759d2f65
plugins/muc/muc.lib: Fix anonymous check in `send_occupant_list`
12 years ago
daurnimator
f9f2d557fa
plugins/muc/muc.lib: Allow `:send_occupant_list` to have no filter
12 years ago
daurnimator
46f318fa4f
plugins/muc/muc.lib: Fix sending occupant jid instead of real jid in <item/> actor
12 years ago
daurnimator
6334074f11
plugins/muc/muc.lib: Clean up :set_role. Removes :can_set_role
12 years ago
daurnimator
b0999be824
plugins/muc/muc.lib: Remove callback parameter from set_role and set_affiliation
12 years ago