Mercurial > prosody-hg
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 |
| parents | 50b24b3476e6 |
| children | 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(); |
