# HG changeset patch # User John@Yosemite-PC # Date 1331502479 14400 # Node ID 7b01c9b2b4115bd20601f9276a8053c9f54463d1 # Parent 731182d55b6c9d4cc3014f9c5a22e2f6e11f562b "nuke" command and implementation diff -r 731182d55b6c -r 7b01c9b2b411 Core.lua --- a/Core.lua Sun Mar 11 17:47:26 2012 -0400 +++ b/Core.lua Sun Mar 11 17:47:59 2012 -0400 @@ -85,6 +85,13 @@ else bsk:Print(sformat("Deleting anything of type %s is not supported",param[2])) end + elseif param[1] == "nuke" then + if param[2] == nil or param[2] == "" then + bsk:PrintTable(param) + return + end + local person = FixPersonName(param[2]) + bsk:NukePerson(person) elseif param[1] == "add" then if param[2] == nil or param[2] == "" then bsk:PrintTable(param) diff -r 731182d55b6c -r 7b01c9b2b411 Lists.lua --- a/Lists.lua Sun Mar 11 17:47:26 2012 -0400 +++ b/Lists.lua Sun Mar 11 17:47:59 2012 -0400 @@ -605,6 +605,14 @@ end end end + +function bsk:NukePerson(name) -- delete from all lists and then from persons + local pid = personName2id[name] + for i,v in pairs(bsk.lists) do + bsk:RemovePersonFromList(name,v.name) + end + bsk:RemovePerson(name) +end --}}} -- "Soft" actions- ie things that cause nonpermanent state {{{