diff options
| author | Ted Trask <ttrask01@yahoo.com> | 2012-08-15 15:18:17 +0000 | 
|---|---|---|
| committer | Ted Trask <ttrask01@yahoo.com> | 2012-08-15 15:18:17 +0000 | 
| commit | e42362126dc747578a9a2537b6e5ebc4dac99acf (patch) | |
| tree | 7beda155ec6759da0c6549835afd8ff233cff619 | |
| parent | 52300c938f0a6f832ad0e30e1c5cad1d7338f16c (diff) | |
| download | acf-tcpproxy-e42362126dc747578a9a2537b6e5ebc4dac99acf.tar.bz2 acf-tcpproxy-e42362126dc747578a9a2537b6e5ebc4dac99acf.tar.xz | |
Removed calls to redirect_to_referrer and fixed smtpstatus
| -rw-r--r-- | tcpproxy-controller.lua | 4 | ||||
| -rw-r--r-- | tcpproxy-listsmtpentries-html.lsp | 2 | ||||
| -rw-r--r-- | tcpproxy-listsmtpfiles-html.lsp | 2 | ||||
| -rw-r--r-- | tcpproxy-model.lua | 29 | ||||
| -rw-r--r-- | tcpproxy-smtpstatus-html.lsp | 5 | 
5 files changed, 30 insertions, 12 deletions
| diff --git a/tcpproxy-controller.lua b/tcpproxy-controller.lua index 97cbaac..3809a10 100644 --- a/tcpproxy-controller.lua +++ b/tcpproxy-controller.lua @@ -27,7 +27,7 @@ function editsmtpentry(self)  end  function delsmtpentry(self) -	return self:redirect_to_referrer(self.model.delsmtpentry(self.clientdata.ipaddr)) +	return self.handle_form(self, self.model.getdelsmtpentry, self.model.delsmtpentry, self.clientdata, "Delete", "Delete SMTP Proxy Entry", "SMTP Proxy Entry Deleted" )  end  function listsmtpfiles(self) @@ -43,5 +43,5 @@ function editsmtpfile(self)  end  function delsmtpfile(self) -	return self:redirect_to_referrer(self.model.delsmtpfile(self.clientdata.filename)) +	return self.handle_form(self, self.model.getdelsmtpfile, self.model.delsmtpfile, self.clientdata, "Delete", "Delete SMTP Proxy File", "SMTP Proxy File Deleted" )  end diff --git a/tcpproxy-listsmtpentries-html.lsp b/tcpproxy-listsmtpentries-html.lsp index 60f3532..11155c9 100644 --- a/tcpproxy-listsmtpentries-html.lsp +++ b/tcpproxy-listsmtpentries-html.lsp @@ -20,7 +20,7 @@ require("htmlviewfunctions")  			<%= html.link{value=page_info.script..page_info.prefix..page_info.controller.."/editsmtpentry?ipaddr="..(interface.ipaddr or interface.interface).."&redir="..page_info.orig_action, label="Edit "} %>  		<% end %>  		<% if viewlibrary.check_permission("delsmtpentry") then %> -			<%= html.link{value=page_info.script..page_info.prefix..page_info.controller.."/delsmtpentry?ipaddr="..(interface.ipaddr or interface.interface), label="Delete "} %> +			<%= html.link{value=page_info.script..page_info.prefix..page_info.controller.."/delsmtpentry?submit=true&ipaddr="..(interface.ipaddr or interface.interface), label="Delete "} %>  		<% end %>  		</TD>  		<TD style="padding-right:20px;white-space:nowrap;"><%= html.html_escape(interface.interface) %></TD> diff --git a/tcpproxy-listsmtpfiles-html.lsp b/tcpproxy-listsmtpfiles-html.lsp index 3760a66..da3818b 100644 --- a/tcpproxy-listsmtpfiles-html.lsp +++ b/tcpproxy-listsmtpfiles-html.lsp @@ -19,7 +19,7 @@ require("htmlviewfunctions")  			<%= html.link{value=page_info.script..page_info.prefix..page_info.controller.."/editsmtpfile?filename="..file.."&redir="..page_info.orig_action, label="Edit "} %>  		<% end %>  		<% if viewlibrary.check_permission("delsmtpfile") then %>	 -			<%= html.link{value=page_info.script..page_info.prefix..page_info.controller.."/delsmtpfile?filename="..file, label="Delete "} %> +			<%= html.link{value=page_info.script..page_info.prefix..page_info.controller.."/delsmtpfile?submit=true&filename="..file, label="Delete "} %>  		<% end %>  		</TD>  		<TD style="white-space:nowrap;"><%= html.html_escape(file) %></TD> diff --git a/tcpproxy-model.lua b/tcpproxy-model.lua index 75d5c7b..712f174 100644 --- a/tcpproxy-model.lua +++ b/tcpproxy-model.lua @@ -6,6 +6,7 @@ validator = require("acf.validator")  fs = require("acf.fs")  require("posix")  format = require("acf.format") +processinfo = require("acf.processinfo")  -- Set variables  local configfile = "/etc/tcpproxy.conf" @@ -332,9 +333,16 @@ function updatesmtpentry(self, entry)  	return entry  end -function delsmtpentry(ipaddr) -	setsmtpcmd(ipaddr, nil) -	return cfe({ value="Deleted SMTP Proxy Entry", label="Delete SMTP Entry result" }) +function getdelsmtpentry(self, clientdata) +	local retval = {} +	retval.ipaddr = cfe({ value=clientdata.ipaddr or "", label="IP Address" }) +	return cfe({ type="group", value=retval, label="Delete SMTP Proxy Entry" }) +end + +function delsmtpentry(self, delentry) +	-- TODO - validate ipaddr +	setsmtpcmd(delentry.value.ipaddr.value, nil) +	return delentry  end  function listsmtpfiles() @@ -384,14 +392,21 @@ function updatesmtpfile(self, filedetails)  	return modelfunctions.setfiledetails(self, filedetails, function(filename) return validator.is_valid_filename(filename, smtpdirectory) end)  end -function delsmtpfile(filename) -	local retval = cfe({ value="Deleted SMTP Proxy File", label="Delete SMTP File result" }) +function getdelsmtpfile(self, clientdata) +	local retval = {} +	retval.filename = cfe({ value=clientdata.filename or "", label="File Name" }) +	return cfe({ type="group", value=retval, label="Delete SMTP Proxy File" }) +end + +function delsmtpfile(self, delfile) +	local filename = delfile.value.filename.value  	if validator.is_valid_filename(filename, smtpdirectory) and fs.is_file(filename) then  		os.remove(filename)  	else -		retval.value = "Failed to delete SMTP Proxy File - invalid filename" +		delfile.errtxt = "Failed to delete SMTP Proxy File" +		delfile.value.filename.errtxt = "Invalid filename"  	end -	return retval +	return delfile  end diff --git a/tcpproxy-smtpstatus-html.lsp b/tcpproxy-smtpstatus-html.lsp index da66729..b0e4060 100644 --- a/tcpproxy-smtpstatus-html.lsp +++ b/tcpproxy-smtpstatus-html.lsp @@ -10,7 +10,10 @@ require("htmlviewfunctions")  <% htmlviewfunctions.displayitem(view.value.version)  if view.value.version and view.value.version.errtxt and viewlibrary.check_permission("apk-tools/apk/install") then  %> -	<a href="<%= html.html_escape(page_info.script .. "/apk-tools/apk/install?submit=true&package="..view.value.version.name) %>">Install</a> +	<DT>Install package</DT> +	<DD><form action="<%= html.html_escape(page_info.script .. "/apk-tools/apk/install") %>" method="POST"> +	<input type='hidden' name='package' value='<%= html.html_escape(view.value.version.name) %>'> +	<input class='submit' type='submit' name='submit' value='Install'></form></DD>  <% end %>  </DL> | 
