finally fixed the add_org request loop bug in the formspec!!

This commit is contained in:
Luke Miller 2021-07-28 18:50:22 -04:00
parent 3dd5ff615d
commit 1707a417e3

View File

@ -127,7 +127,6 @@ function modpol.interactions.org_dashboard(user, org_name)
-- prepare processes menu -- prepare processes menu
local processes = {} local processes = {}
for k,v in ipairs(org.processes) do for k,v in ipairs(org.processes) do
print(k, v)
local this_request = org.requests[v.request_id] local this_request = org.requests[v.request_id]
if type(this_request) == "table" then if type(this_request) == "table" then
local active = '' local active = ''
@ -136,7 +135,11 @@ function modpol.interactions.org_dashboard(user, org_name)
active = '*' active = '*'
end end
end end
local req_str = v.id .. " (" .. this_request.type .. " -> " .. table.concat(this_request.params, ", ") .. ")" .. active print(this_request.params)
print(this_request.type)
for k,v in pairs(this_request.params) do print(k, v) end
for k,v in pairs(this_request.params[1]) do print(k,v) end
local req_str = v.id .. " (" .. this_request.type .. " -> " .. this_request.params[1] .. ")" .. active
table.insert(processes, req_str) table.insert(processes, req_str)
end end
end end
@ -193,14 +196,17 @@ minetest.register_on_player_receive_fields(function (player, formname, fields)
--DEPRICATED pre-request version to remove: --DEPRICATED pre-request version to remove:
--modpol.interactions.add_org(pname, org.id) --modpol.interactions.add_org(pname, org.id)
modpol.interactions.text_query(pname, "Org name:") modpol.interactions.text_query(pname, "Org name:")
local new_org_name = _contexts[pname] -- local new_org_name = _contexts[pname]["new_org_name"]
_contexts[pname] = function(input)
local new_request = { local new_request = {
user = pname, user = pname,
type = "add_org", type = "add_org",
params = {new_org_name} params = {input}
} }
org:make_request(new_request) org:make_request(new_request)
_contexts[pname] = nil _contexts[pname] = nil
end
elseif fields.remove_org then elseif fields.remove_org then
modpol.interactions.remove_org(pname) modpol.interactions.remove_org(pname)
elseif fields.back then elseif fields.back then