Software /
code /
prosody
Diff
plugins/muc/muc.lib.lua @ 6222:355b29881117
plugins/muc: Move persistent room configuration to own module
author | daurnimator <quae@daurnimator.com> |
---|---|
date | Tue, 15 Apr 2014 17:06:04 -0400 |
parent | 6221:f321536afeec |
child | 6223:2a7ce69844ca |
line wrap: on
line diff
--- a/plugins/muc/muc.lib.lua Fri Apr 04 11:20:20 2014 -0400 +++ b/plugins/muc/muc.lib.lua Tue Apr 15 17:06:04 2014 -0400 @@ -281,9 +281,6 @@ event.reply:tag("feature", {var = event.room:get_moderated() and "muc_moderated" or "muc_unmoderated"}):up(); end); module:hook("muc-disco#info", function(event) - event.reply:tag("feature", {var = event.room:get_persistent() and "muc_persistent" or "muc_temporary"}):up(); -end); -module:hook("muc-disco#info", function(event) event.reply:tag("feature", {var = event.room:get_hidden() and "muc_hidden" or "muc_public"}):up(); end); module:hook("muc-disco#info", function(event) @@ -349,16 +346,6 @@ function room_mt:get_moderated() return self._data.moderated; end -function room_mt:set_persistent(persistent) - persistent = persistent and true or nil; - if self._data.persistent ~= persistent then - self._data.persistent = persistent; - if self.save then self:save(true); end - end -end -function room_mt:get_persistent() - return self._data.persistent; -end function room_mt:set_hidden(hidden) hidden = hidden and true or nil; if self._data.hidden ~= hidden then @@ -673,14 +660,6 @@ end module:hook("muc-config-form", function(event) table.insert(event.form, { - name = 'muc#roomconfig_persistentroom', - type = 'boolean', - label = 'Make Room Persistent?', - value = event.room:get_persistent() - }); -end); -module:hook("muc-config-form", function(event) - table.insert(event.form, { name = 'muc#roomconfig_publicroom', type = 'boolean', label = 'Make Room Publicly Searchable?', @@ -745,9 +724,6 @@ return true; end module:hook("muc-config-submitted", function(event) - event.update_option("persistent", "muc#roomconfig_persistentroom"); -end); -module:hook("muc-config-submitted", function(event) event.update_option("moderated", "muc#roomconfig_moderatedroom"); end); module:hook("muc-config-submitted", function(event) @@ -780,7 +756,6 @@ if password then x:tag("password"):text(password):up(); end x:up(); self:clear(x); - self:set_persistent(false); module:fire_event("muc-room-destroyed", { room = self }); end @@ -1220,6 +1195,10 @@ room_mt.get_members_only = members_only.get; room_mt.set_members_only = members_only.set; +local persistent = module:require "muc/persistent"; +room_mt.get_persistent = persistent.get; +room_mt.set_persistent = persistent.set; + local history = module:require "muc/history"; room_mt.send_history = history.send; room_mt.get_historylength = history.get_length;