fixed process count, added lazy table length function, removed orgs now decrement org counter, orgs loaded message should now be accurate

This commit is contained in:
Luke Miller 2022-08-16 11:10:40 -04:00
parent 8d3428653c
commit 52334f409e
4 changed files with 13 additions and 2 deletions

View File

@ -169,7 +169,7 @@ function modpol.interactions.org_dashboard(user, org_string)
table.sort(modules)
-- list pending
local process_msg = #org.processes .. " total processes"
local process_msg = modpol.util.lazy_table_length(org.processes, "deleted") .. " total processes"
if org.pending[user] then
process_msg = process_msg .. " (" ..
modpol.util.num_pairs(org.pending[user]) .. " pending)"

View File

@ -224,6 +224,7 @@ function modpol.orgs:delete()
end
modpol.orgs.array[self.id] = 'removed'
modpol.orgs.count = modpol.orgs.count - 1
modpol.ocutil.log('Deleted org ' .. self.name .. ': ' .. self.id)
self:record('Deleted ' .. self.name .. ' and all child orgs', 'del_org')

View File

@ -99,7 +99,7 @@ local load_orgs = function()
-- setmetatable(org, modpol.orgs)
-- end
local nn = modpol.ocutil.table_length (modpol.orgs.array)
local nn = modpol.orgs.count
local str = "entries"
if nn == 1 then str = "entry" end
modpol.ocutil.log (nn .. " orgs loaded from disk")

View File

@ -32,3 +32,13 @@ function modpol.util.num_pairs(t)
end
return i
end
function modpol.util.lazy_table_length(tbl, lazy_val)
local count = 0
for k, v in ipairs(tbl) do
if v ~= lazy_val then
count = count + 1
end
end
return count
end