Changeset

6237:a58685df9d16

plugins/muc: Add room:has_occupant() method
author daurnimator <quae@daurnimator.com>
date Tue, 29 Apr 2014 12:54:04 -0400
parents 6236:ee996e679f15
children 6238:b2b523d21891
files plugins/muc/mod_muc.lua plugins/muc/muc.lib.lua
diffstat 2 files changed, 5 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/plugins/muc/mod_muc.lua	Mon Apr 28 16:31:21 2014 -0400
+++ b/plugins/muc/mod_muc.lua	Tue Apr 29 12:54:04 2014 -0400
@@ -136,7 +136,7 @@
 
 module:hook("muc-occupant-left",function(event)
 	local room = event.room
-	if not next(room._occupants) and not persistent.get(room) then -- empty, non-persistent room
+	if not room:has_occupant() and not persistent.get(room) then -- empty, non-persistent room
 		module:fire_event("muc-room-destroyed", { room = room });
 	end
 end);
--- a/plugins/muc/muc.lib.lua	Mon Apr 28 16:31:21 2014 -0400
+++ b/plugins/muc/muc.lib.lua	Tue Apr 29 12:54:04 2014 -0400
@@ -79,6 +79,10 @@
 	end
 end
 
+function room_mt:has_occupant()
+	return next(self._occupants, nil) ~= nil
+end
+
 function room_mt:get_occupant_by_real_jid(real_jid)
 	local occupant_jid = self:get_occupant_jid(real_jid);
 	if occupant_jid == nil then return nil end