diff options
author | Ted Trask <ttrask01@yahoo.com> | 2012-08-06 16:52:09 +0000 |
---|---|---|
committer | Ted Trask <ttrask01@yahoo.com> | 2012-08-06 16:52:09 +0000 |
commit | 12a610fb481f7b2c02df397f930f3cba015bfe90 (patch) | |
tree | a0ee67aca62c49f110bd457c2549283d414b676d | |
parent | 85cf1138ba7c5397e17f92b676561731b5e12152 (diff) | |
download | acf-openvpn-12a610fb481f7b2c02df397f930f3cba015bfe90.tar.bz2 acf-openvpn-12a610fb481f7b2c02df397f930f3cba015bfe90.tar.xz |
Removed calls to redirect_to_referrer
-rw-r--r-- | openvpn-controller.lua | 4 | ||||
-rw-r--r-- | openvpn-listcerts-html.lsp | 4 | ||||
-rw-r--r-- | openvpn-model.lua | 32 |
3 files changed, 26 insertions, 14 deletions
diff --git a/openvpn-controller.lua b/openvpn-controller.lua index e9e6575..6c69253 100644 --- a/openvpn-controller.lua +++ b/openvpn-controller.lua @@ -36,7 +36,7 @@ function listcerts(self) end function deletecert(self) - return self:redirect_to_referrer(self.model.delete_cert(self.clientdata.cert)) + return self.handle_form(self, self.model.get_delete_cert, self.model.delete_cert, self.clientdata, "Delete", "Delete Certificate", "Certificate Deleted") end function uploadcert (self) @@ -48,5 +48,5 @@ function viewcert(self) end function generatedhparams(self) - return self:redirect_to_referrer(self.model.generate_dh_params()) + return self.handle_form(self, self.model.get_generate_dh_params, self.model.generate_dh_params, self.clientdata, "Generate", "Generate Diffie Hellman parameters", "Diffie Hellman parameters generated") end diff --git a/openvpn-listcerts-html.lsp b/openvpn-listcerts-html.lsp index 7e4a0ab..8f1cc6d 100644 --- a/openvpn-listcerts-html.lsp +++ b/openvpn-listcerts-html.lsp @@ -15,7 +15,7 @@ <% for i,cert in ipairs(view.value) do %> <TR> <TD style="padding-right:20px;white-space:nowrap;"> - <%= html.link{value=page_info.script..page_info.prefix..page_info.controller.."/deletecert?cert="..cert.."&redir="..page_info.orig_action, label="Delete "} %> + <%= html.link{value=page_info.script..page_info.prefix..page_info.controller.."/deletecert?submit=true&cert="..cert.."&redir="..page_info.orig_action, label="Delete "} %> <% if not string.find(cert, "%-key") then %> <%= html.link{value=page_info.script..page_info.prefix..page_info.controller.."/viewcert?cert="..cert.."&redir="..page_info.orig_action, label="View "} %> <% end %> @@ -34,7 +34,7 @@ end %> <DL> <form action="<%= html.html_escape(page_info.script .. page_info.prefix .. page_info.controller .. "/generatedhparams") %>"> <DT>Generate Diffie Hellman parameters</DT> -<DD><input class="submit" type="submit" value="Generate"></DD> +<DD><input class="submit" type="submit" name="submit" value="Generate"></DD> </form> </DL> <% end %> diff --git a/openvpn-model.lua b/openvpn-model.lua index 8cdd1b3..6a7d7bb 100644 --- a/openvpn-model.lua +++ b/openvpn-model.lua @@ -211,18 +211,25 @@ function list_certs() return cfe({ type="list", value=list, label="OpenVPN Certificates" }) end -function delete_cert(certname) +function get_delete_cert(self, clientdata) + local retval = {} + retval.cert = cfe({ value=clientdata.cert or "", label="Certificate Local Name" }) + return cfe({ type="group", value=retval, label="Delete Certificate" }) +end + +function delete_cert(self, delcert) local list = list_certs() - local retval = cfe({ label="Delete Certificate result", errtxt="Invalid cert name" }) + delcert.value.cert.errtxt = "Invalid cert name" + delcert.errtxt = "Failed to delete certificate" for i,cert in ipairs(list.value) do - if cert == certname then - os.remove(certname) - retval.value = "Certificate deleted" - retval.errtxt = nil + if cert == delcert.value.cert.value then + os.remove(cert) + delcert.value.cert.errtxt = nil + delcert.errtxt = nil break end end - return retval + return delcert end function new_upload_cert() @@ -323,11 +330,16 @@ view_cert = function(certname) return cfe({ type="table", value={name=certname, value=cmdresult}, label="Certificate" }) end -generate_dh_params = function() +get_generate_dh_params = function(self, clientdata) + local retval = {} + return cfe({ type="group", value=retval, label="Generate Diffie Hellman parameters" }) +end + +generate_dh_params = function(self, gen) local cmd = path .. "openssl dhparam -out "..certurl.."dh1024.pem 1024 2>&1" f = io.popen(cmd) - local cmdresult = f:read("*a") + gen.descr = f:read("*a") f:close() - return cfe({ value=cmdresult, label="Generate Diffie Hellman parameters result" }) + return gen end |