diff options
author | Mika Havela <mika.havela@gmail.com> | 2009-07-08 13:11:02 +0000 |
---|---|---|
committer | Mika Havela <mika.havela@gmail.com> | 2009-07-08 13:11:02 +0000 |
commit | 4fd29b69a10f27c6a48e5bba9d55a10241e6eb5c (patch) | |
tree | 87dfa004f3edefce0b015c52ad9d0864c60caf06 | |
parent | a3275e686b437a0ace8d29294f5d3051dbf5bf10 (diff) | |
download | acf-rrdtool-4fd29b69a10f27c6a48e5bba9d55a10241e6eb5c.tar.bz2 acf-rrdtool-4fd29b69a10f27c6a48e5bba9d55a10241e6eb5c.tar.xz |
List graph-files (created the view-file)
Updated the validfilename() to be able to modify/delete graph-files too.
-rw-r--r-- | rrdtool-controller.lua | 2 | ||||
-rw-r--r-- | rrdtool-listgraphcfg-html.lsp | 68 | ||||
-rw-r--r-- | rrdtool-model.lua | 16 |
3 files changed, 81 insertions, 5 deletions
diff --git a/rrdtool-controller.lua b/rrdtool-controller.lua index ac0e1cb..100cd9c 100644 --- a/rrdtool-controller.lua +++ b/rrdtool-controller.lua @@ -51,7 +51,7 @@ function viewgraph(self) end function listgraphcfg(self) - local configfiles = self.model.getrrdlist() + local configfiles = self.model.getgraphlist() local config = {} return cfe({ type="list", value=configfiles.value, label="View/Edit graph files" }) diff --git a/rrdtool-listgraphcfg-html.lsp b/rrdtool-listgraphcfg-html.lsp new file mode 100644 index 0000000..b2ad204 --- /dev/null +++ b/rrdtool-listgraphcfg-html.lsp @@ -0,0 +1,68 @@ +<% 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>") +--]] +%> + +<% displaycommandresults({"delete"}, session) %> + +<script type="text/javascript"> +function javascript_confirm_graph(formID,filename) { + var message = "Are you sure you want to remove '" + filename + "'?"; + var return_value = confirm(message); + if ( return_value === true ) { + location.href="delete?filename=" + filename; + } +} +</script> + +<h2><%= form.label %></h2> + +<form id="confirmDisplay" action="#" onsubmit="return false"></form> + +<TABLE> + <TR style="background:#eee;font-weight:bold;"> + <TD style="padding-right:20px;white-space:nowrap;text-align:left;" class="header">Action</TD> + <TD style="padding-right:20px;white-space:nowrap;text-align:right;" class="header">Size</TD> + <TD style="padding-right:20px;white-space:nowrap;text-align:left;" class="header">Last Modified</TD> + <TD style="white-space:nowrap;text-align:left;" class="header">File</TD> + </TR> +<% for i,file in ipairs(form.value) do %> + <TR> + <TD style="padding-right:20px;white-space:nowrap;"> + <% if session.permissions[page_info.controller].delete then %> + <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 + %> + </TD> + <TD style="padding-right:20px;white-space:nowrap;text-align:right;"><%= html.html_escape(file.value.filesize.value) %></TD> + <TD style="padding-right:20px;white-space:nowrap;"><%= html.html_escape(file.value.mtime.value) %></TD> + <TD style="white-space:nowrap;" width="90%"><%= html.html_escape(string.gsub(file.value.filename.value, "^.*/", "")) %></TD> + </TR> +<% end %> + + <% 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 " }) %> + </TD> + <TD> </TD><TD> </TD><TD> </TD> + </TR> + <% end %> + +</TABLE> + +<% if viewlibrary and viewlibrary.dispatch_component and session.permissions[page_info.controller].newfile then + local newfileform = viewlibrary.dispatch_component("newfile", nil, true) %> +<h2>Create new Domain</h2> +<% + newfileform.action = page_info.script .. page_info.prefix .. page_info.controller .. "/newfile" + displayform(newfileform) +end %> diff --git a/rrdtool-model.lua b/rrdtool-model.lua index 2acc464..834cae3 100644 --- a/rrdtool-model.lua +++ b/rrdtool-model.lua @@ -47,10 +47,14 @@ local function list_files (path,search) end local function validfilename(path) - local files = list_files(databases) - for k,v in pairs(files.value) do - if (v["value"]["filename"]["value"] == path) then - return true, tostring(v["value"]["filename"]["value"]) + local files = fs.find_files_as_array(nil, databases) + + for k,v in pairs(fs.find_files_as_array(".*graph",graphpath)) do + table.insert(files,v) + end + for k,v in pairs(files) do + if (v == path) then + return true, tostring(path) end end return false, "Not a valid filename!" @@ -226,3 +230,7 @@ function view_graph(self, graph_grp, graph_id) return settings end + +function getgraphlist() + return list_files(graphpath,".*graph") +end |