MUC: Save room to storage once after form processing, not in each individual setter
[prosody.git] / plugins / muc / name.lib.lua
index 18400e92ca8bba3491a7c7c3b58b730dc7f114b1..3dbae9db59b59ff361c4f3d75e5fc63cb63ac6f8 100644 (file)
@@ -17,7 +17,6 @@ local function set_name(room, name)
        if name == "" or name == (jid_split(room.jid)) then name = nil; end
        if room._data.name == name then return false; end
        room._data.name = name;
-       if room.save then room:save(true); end
        return true;
 end
 
@@ -30,8 +29,8 @@ module:hook("muc-config-form", function(event)
                name = "muc#roomconfig_roomname";
                type = "text-single";
                label = "Name";
+               value = get_name(event.room) or "";
        });
-       event.formdata["muc#roomconfig_roomname"] = get_description(event.room) or "";
 end);
 
 module:hook("muc-config-submitted/muc#roomconfig_roomname", function(event)