Software /
code /
prosody
Comparison
plugins/muc/moderated.lib.lua @ 7353:ca31d3271cf8
MUC: Save room to storage once after form processing, not in each individual setter
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 15 Apr 2016 11:50:55 +0200 |
parent | 7352:50b24b3476e6 |
child | 7401:e16b3fd0bd80 |
comparison
equal
deleted
inserted
replaced
7352:50b24b3476e6 | 7353:ca31d3271cf8 |
---|---|
13 | 13 |
14 local function set_moderated(room, moderated) | 14 local function set_moderated(room, moderated) |
15 moderated = moderated and true or nil; | 15 moderated = moderated and true or nil; |
16 if get_moderated(room) == moderated then return false; end | 16 if get_moderated(room) == moderated then return false; end |
17 room._data.moderated = moderated; | 17 room._data.moderated = moderated; |
18 room:save(true); | |
19 return true; | 18 return true; |
20 end | 19 end |
21 | 20 |
22 module:hook("muc-disco#info", function(event) | 21 module:hook("muc-disco#info", function(event) |
23 event.reply:tag("feature", {var = get_moderated(event.room) and "muc_moderated" or "muc_unmoderated"}):up(); | 22 event.reply:tag("feature", {var = get_moderated(event.room) and "muc_moderated" or "muc_unmoderated"}):up(); |