diff options
-rw-r--r-- | rrdtool-controller.lua | 6 | ||||
-rw-r--r-- | rrdtool-editgraphcfg-html.lsp | 19 | ||||
-rw-r--r-- | rrdtool-listgraphcfg-html.lsp | 4 | ||||
-rw-r--r-- | rrdtool-listrrd-html.lsp | 4 | ||||
-rw-r--r-- | rrdtool-model.lua | 16 | ||||
-rw-r--r-- | rrdtool-viewgraph-popup.lsp | 2 | ||||
-rw-r--r-- | rrdtool.roles | 4 |
7 files changed, 48 insertions, 7 deletions
diff --git a/rrdtool-controller.lua b/rrdtool-controller.lua index d325abe..28a94f0 100644 --- a/rrdtool-controller.lua +++ b/rrdtool-controller.lua @@ -62,3 +62,9 @@ function config(self) return nil end +function editgraphcfg(self) + return controllerfunctions.handle_form(self, + function() return self.model.getgraphfile(self.clientdata.filename) end, + function() return self.model.setgraphfile() end, + self.clientdata, "Save", "Edit Config", "Configuration Saved") +end diff --git a/rrdtool-editgraphcfg-html.lsp b/rrdtool-editgraphcfg-html.lsp new file mode 100644 index 0000000..c67c832 --- /dev/null +++ b/rrdtool-editgraphcfg-html.lsp @@ -0,0 +1,19 @@ +<% local form, viewlibrary, page_info, session = ... +require("viewfunctions") +%> + +<% +--[[ DEBUG INFORMATION +io.write("<H1>DEBUGGING</H1><span style='color:red'><H2>DEBUG INFO: CFE</H2>") +io.write(html.cfe_unpack(form)) +io.write("</span>") +--]] +%> + +<H1><%= html.html_escape(form.label) %></H1> +<% + form.action = page_info.script .. page_info.prefix .. page_info.controller .. "/" .. page_info.action + local order = {"filename", "filecontent"} + displayform(form, order) +%> + diff --git a/rrdtool-listgraphcfg-html.lsp b/rrdtool-listgraphcfg-html.lsp index b2ad204..33d8405 100644 --- a/rrdtool-listgraphcfg-html.lsp +++ b/rrdtool-listgraphcfg-html.lsp @@ -39,7 +39,7 @@ function javascript_confirm_graph(formID,filename) { <A STYLE="cursor: pointer;" onclick="javascript_confirm_graph('confirmDisplay','<% io.write(file.value.filename.value) %>')">Delete</A> <% end %> <% - if session.permissions[page_info.controller].edit then io.write(html.link{value = "edit?filename=" .. file.value.filename.value.."&redir="..page_info.orig_action, label="Edit " }) end + if session.permissions[page_info.controller].edit then io.write(html.link{value = "editgraphcfg?filename=" .. file.value.filename.value.."&redir="..page_info.orig_action, label="Edit " }) end %> </TD> <TD style="padding-right:20px;white-space:nowrap;text-align:right;"><%= html.html_escape(file.value.filesize.value) %></TD> @@ -51,7 +51,7 @@ function javascript_confirm_graph(formID,filename) { <% if session.permissions[page_info.controller].createrrd then %> <TR> <TD style="padding-right:20px;white-space:nowrap;"> - <% io.write(html.link{value = "createrrd", label="Create new DB " }) %> + <% io.write(html.link{value = "editgraphcfg", label="Create new graph " }) %> </TD> <TD> </TD><TD> </TD><TD> </TD> </TR> diff --git a/rrdtool-listrrd-html.lsp b/rrdtool-listrrd-html.lsp index 9f1fbaa..3281338 100644 --- a/rrdtool-listrrd-html.lsp +++ b/rrdtool-listrrd-html.lsp @@ -40,8 +40,8 @@ function javascript_confirm_demo(formID,filename) { <% end %> <% io.write(html.link{value = "rrdinfo?filename=" .. file.value.filename.value, label="Info " }) - if session.permissions[page_info.controller].edit then io.write(html.link{value = "edit?filename=" .. file.value.filename.value.."&redir="..page_info.orig_action, label="Edit " }) end - if session.permissions[page_info.controller].editfile then io.write(html.link{value = "editfile?filename=" .. file.value.filename.value.."&redir="..page_info.orig_action, label="Expert " }) end +-- if session.permissions[page_info.controller].edit then io.write(html.link{value = "edit?filename=" .. file.value.filename.value.."&redir="..page_info.orig_action, label="Edit " }) end +-- if session.permissions[page_info.controller].editfile then io.write(html.link{value = "editfile?filename=" .. file.value.filename.value.."&redir="..page_info.orig_action, label="Expert " }) end %> </TD> <TD style="padding-right:20px;white-space:nowrap;text-align:right;"><%= html.html_escape(file.value.filesize.value) %></TD> diff --git a/rrdtool-model.lua b/rrdtool-model.lua index e9ff4e6..b3f6dee 100644 --- a/rrdtool-model.lua +++ b/rrdtool-model.lua @@ -226,3 +226,19 @@ end function getgraphlist() return list_files(graphpath,".*graph") end + +function getgraphfile(path) + if (path) and not (validfilename(path)) then + path = nil + end + local filedetails = modelfunctions.getfiledetails(path) + local output = {value={filename=filedetails.value.filename, + filecontent=filedetails.value.filecontent,}} +-- output.value.filecontent.rows="30" -- FIXME: For some reason I can't control the size of a textarea + if not (path) then + output.value.filename.errtxt=nil + else + output.value.filename.disabled="true" + end + return output +end diff --git a/rrdtool-viewgraph-popup.lsp b/rrdtool-viewgraph-popup.lsp index ecc2702..b75085e 100644 --- a/rrdtool-viewgraph-popup.lsp +++ b/rrdtool-viewgraph-popup.lsp @@ -9,6 +9,6 @@ io.write(html.cfe_unpack(data)) io.write("</span>") --]] %> -<PRE><%= data.descr %></PRE> +<P><%= data.descr %></P> <IMG SRC='<%= data.output %>' width='<%= data.graph.width or data.option.width %>' height='<%= data.graph.height or data.option.height %>'> diff --git a/rrdtool.roles b/rrdtool.roles index 8423772..3e283b3 100644 --- a/rrdtool.roles +++ b/rrdtool.roles @@ -1,4 +1,4 @@ -USER=rrdtool:status,rrdtool:welcome,rrdtool:startstop,rrdtool:rrdinfo,rrdtool:listgraphs,rrdtool:viewgraph,rrdtool:listgraphcfg,rrdtool:configure +USER=rrdtool:status,rrdtool:welcome,rrdtool:startstop,rrdtool:rrdinfo,rrdtool:listgraphs,rrdtool:viewgraph,rrdtool:listgraphcfg EDITOR=rrdtool:config,rrdtool:listrrd EXPERT=rrdtool:expert -ADMIN=rrdtool:status,rrdtool:welcome,rrdtool:startstop,rrdtool:config,rrdtool:listrrd,rrdtool:expert,rrdtool:delete,rrdtool:createrrd,rrdtool:rrdinfo,rrdtool:listgraphs,rrdtool:viewgraph,rrdtool:listgraphcfg,rrdtool:configure +ADMIN=rrdtool:status,rrdtool:welcome,rrdtool:startstop,rrdtool:config,rrdtool:listrrd,rrdtool:expert,rrdtool:delete,rrdtool:createrrd,rrdtool:rrdinfo,rrdtool:listgraphs,rrdtool:viewgraph,rrdtool:listgraphcfg,rrdtool:editgraphcfg,rrdtool:edit |