From 5059daaa1d5621f24ce4f380fd035b448b722775 Mon Sep 17 00:00:00 2001 From: Ted Trask Date: Tue, 7 Aug 2012 15:03:37 +0000 Subject: Removed call to redirect_to_referrer --- ppp-controller.lua | 2 +- ppp-listpeers-html.lsp | 2 +- ppp-model.lua | 19 +++++++++++++------ 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/ppp-controller.lua b/ppp-controller.lua index 275f728..a86cd13 100644 --- a/ppp-controller.lua +++ b/ppp-controller.lua @@ -23,7 +23,7 @@ function createpeer(self) end function deletepeer(self) - return self:redirect_to_referrer(self.model.delete_peer(self.clientdata.name)) + return self.handle_form(self, self.model.get_delete_peer, self.model.delete_peer, self.clientdata, "Delete", "Delete Peer File", "Peer File Deleted") end function editpeer(self) diff --git a/ppp-listpeers-html.lsp b/ppp-listpeers-html.lsp index 2db2c84..e83ad0d 100644 --- a/ppp-listpeers-html.lsp +++ b/ppp-listpeers-html.lsp @@ -15,7 +15,7 @@ require("htmlviewfunctions") <% - if viewlibrary.check_permission("deletepeer") then io.write(html.link{value = "deletepeer?name=" .. file, label="Delete " }) end + if viewlibrary.check_permission("deletepeer") then io.write(html.link{value = "deletepeer?submit=true&name=" .. file, label="Delete " }) end if viewlibrary.check_permission("editpeer") then io.write(html.link{value = "editpeer?name=" .. file.."&redir="..page_info.orig_action, label="Edit " }) end %> diff --git a/ppp-model.lua b/ppp-model.lua index 8374fe9..ff7a8cc 100644 --- a/ppp-model.lua +++ b/ppp-model.lua @@ -94,19 +94,26 @@ function create_peer(self, newpeer) return newpeer end -function delete_peer(name) - local retval = cfe({ value="Failed to delete peer", label="Delete Peer Result", errtxt="Peer not found" }) +function get_delete_peer(self, clientdata) + retval = {} + retval.name = cfe({ value=clientdata.name or "", label="Name" }) + return cfe({ type="group", value=retval, label="Delete Peer File" }) +end + +function delete_peer(self, delpeer) + delpeer.errtxt = "Failed to delete peer" + delpeer.value.name.errtxt="Peer not found" for file in fs.find(nil, peerspath) do - if name == file then + if delpeer.value.name.value == file then os.remove(file) - retval.value = "Peer Deleted" - retval.errtxt = nil + delpeer.errtxt = nil + delpeer.value.name.errtxt = nil break end end - return retval + return delpeer end function read_peerfile(name) -- cgit v1.2.3