summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTed Trask <ttrask01@yahoo.com>2008-10-22 20:36:29 +0000
committerTed Trask <ttrask01@yahoo.com>2008-10-22 20:36:29 +0000
commitbf06405854b19097e4aa1d3981f5e78727331d8c (patch)
tree2f9659d15071723d342c435aeeb5d92bfd0b691e
parent8997f1f6dc27262042a30c35266a95672e4406d4 (diff)
downloadacf-core-bf06405854b19097e4aa1d3981f5e78727331d8c.tar.bz2
acf-core-bf06405854b19097e4aa1d3981f5e78727331d8c.tar.xz
Modified viewfunctions displaycommandresults to not delete the error results of a form so the form can still display it. Modified a bunch of views to display the results of component forms. Also added code to displayform and displayformstart to automatically generate the action if passed page_info.
git-svn-id: svn://svn.alpinelinux.org/acf/core/trunk@1561 ab2d0c66-481e-0410-8bed-d214d4d58bed
-rw-r--r--app/expert-html.lsp2
-rw-r--r--lib/viewfunctions.lua15
2 files changed, 12 insertions, 5 deletions
diff --git a/app/expert-html.lsp b/app/expert-html.lsp
index d349048..24213a7 100644
--- a/app/expert-html.lsp
+++ b/app/expert-html.lsp
@@ -1,6 +1,8 @@
<% local form, viewlibrary, page_info, session = ... %>
<% require("viewfunctions") %>
+<% displaycommandresults({"startstop"}, session) %>
+
<% if viewlibrary and viewlibrary.dispatch_component then
viewlibrary.dispatch_component("status")
end %>
diff --git a/lib/viewfunctions.lua b/lib/viewfunctions.lua
index c3e4b6a..693b3d8 100644
--- a/lib/viewfunctions.lua
+++ b/lib/viewfunctions.lua
@@ -165,8 +165,11 @@ function displayformitem(myitem, name, viewtype)
io.write("</DD>\n")
end
-function displayformstart(myform)
+function displayformstart(myform, page_info)
if not myform then return end
+ if not myform.action and page_info then
+ myform.action = page_info.script .. page_info.prefix .. page_info.controller .. "/" .. page_info.action
+ end
if myform.descr then io.write('<P CLASS="descr">' .. string.gsub(myform.descr, "\n", "<BR>") .. "</P>\n") end
if myform.errtxt then io.write('<P CLASS="error">' .. string.gsub(myform.errtxt, "\n", "<BR>") .. "</P>\n") end
io.write('<form action="' .. (myform.action or "") .. '" method="POST">\n')
@@ -175,9 +178,9 @@ function displayformstart(myform)
end
end
-function displayform(myform, order, finishingorder)
+function displayform(myform, order, finishingorder, page_info)
if not myform then return end
- displayformstart(myform)
+ displayformstart(myform, page_info)
io.write('<DL>\n')
local reverseorder= {["redir"]=0}
if order then
@@ -221,12 +224,14 @@ function displayformend(myform)
io.write('</FORM>')
end
-function displaycommandresults(commands, session)
+function displaycommandresults(commands, session, preserveerrors)
local cmdresult = {}
for i,cmd in ipairs(commands) do
if session[cmd.."result"] then
cmdresult[#cmdresult + 1] = session[cmd.."result"]
- session[cmd.."result"] = nil
+ if not preserveerrors or not session[cmd.."result"].errtxt then
+ session[cmd.."result"] = nil
+ end
end
end
if #cmdresult > 0 then