2022-01-20 11:04:44 -07:00
|
|
|
--- Removes initiator from org
|
2021-12-18 17:53:49 -07:00
|
|
|
-- @module leave_org
|
|
|
|
|
|
|
|
|
|
local leave_org = {
|
|
|
|
|
name = "Leave org",
|
|
|
|
|
slug = "leave_org",
|
2021-12-19 16:00:26 -07:00
|
|
|
desc = "Remove yourself from the current org"
|
2021-12-18 17:53:49 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
leave_org.data = {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
leave_org.config = {
|
|
|
|
|
}
|
|
|
|
|
|
2022-01-20 11:04:44 -07:00
|
|
|
--- Removes user from org
|
|
|
|
|
-- @function leave_org:initiate
|
2022-01-23 18:21:23 -07:00
|
|
|
-- @param result Callback if this module is embedded in other modules
|
2021-12-18 20:41:49 -07:00
|
|
|
function leave_org:initiate(result)
|
2021-12-18 17:53:49 -07:00
|
|
|
if self.org == modpol.instance then
|
2021-12-19 16:00:26 -07:00
|
|
|
modpol.interactions.message(
|
|
|
|
|
self.initiator,
|
|
|
|
|
"You cannot leave the root org")
|
2021-12-18 17:53:49 -07:00
|
|
|
else
|
|
|
|
|
self.org:remove_member(self.initiator)
|
|
|
|
|
modpol.interactions.message_org(
|
|
|
|
|
self.initiator,self.org.id,
|
|
|
|
|
self.initiator .. " has left org " .. self.org.name)
|
|
|
|
|
modpol.interactions.message(
|
|
|
|
|
self.initiator,
|
|
|
|
|
"You have left org " .. self.org.name)
|
|
|
|
|
end
|
|
|
|
|
if result then result() end
|
2021-12-19 16:00:26 -07:00
|
|
|
self.org:delete_process(self.id)
|
2021-12-18 17:53:49 -07:00
|
|
|
end
|
|
|
|
|
|
|
|
|
|
modpol.modules.leave_org = leave_org
|