summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--rrdtool-controller.lua3
-rw-r--r--rrdtool-listrrd-html.lsp5
-rw-r--r--rrdtool-model.lua10
-rw-r--r--rrdtool.roles4
4 files changed, 17 insertions, 5 deletions
diff --git a/rrdtool-controller.lua b/rrdtool-controller.lua
index e565c51..7aef79c 100644
--- a/rrdtool-controller.lua
+++ b/rrdtool-controller.lua
@@ -37,3 +37,6 @@ function delete(self)
return self:redirect_to_referrer(self.model.remove_file(self, self.clientdata.filename, sessiondata.userinfo.userid))
end
+function rrdinfo(self)
+ return self:redirect_to_referrer(self.model.rrd_info(self, self.clientdata.filename, sessiondata.userinfo.userid))
+end
diff --git a/rrdtool-listrrd-html.lsp b/rrdtool-listrrd-html.lsp
index 5da37a4..0db29db 100644
--- a/rrdtool-listrrd-html.lsp
+++ b/rrdtool-listrrd-html.lsp
@@ -9,8 +9,7 @@ io.write("</span>")
--]]
%>
-<% displaycommandresults({"delete", "edit", "editfile"}, session) %>
-<% displaycommandresults({"newfile"}, session, true) %>
+<% displaycommandresults({"delete", "rrdinfo"}, session) %>
<h1>Databases</h1>
<h2>Edit/View existing DB's</h2>
@@ -26,7 +25,7 @@ io.write("</span>")
<TD style="padding-right:20px;white-space:nowrap;">
<%
if session.permissions[page_info.controller].delete then io.write(html.link{value = "delete?filename=" .. file.value.filename.value, label="Delete " }) end
- io.write(html.link{value = "view?filename=" .. file.value.filename.value, label="View " })
+ 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
%>
diff --git a/rrdtool-model.lua b/rrdtool-model.lua
index f85f08b..b4cbb97 100644
--- a/rrdtool-model.lua
+++ b/rrdtool-model.lua
@@ -125,3 +125,13 @@ function remove_file(self, path, userid)
end
return cfe({ value=success, label="Delete config file result", errtxt=errtxt })
end
+
+function rrd_info(self, path, userid)
+ local success, errtxt
+ if (validfilename(path)) then
+ local f = io.popen( "/usr/bin/rrdtool info ".. tostring(path) )
+ success = f:read("*a") or ""
+ f:close()
+ end
+ return cfe({ value=success, label="rrdtool info ".. tostring(path) , errtxt=errtxt })
+end
diff --git a/rrdtool.roles b/rrdtool.roles
index ad189cb..49c59e7 100644
--- a/rrdtool.roles
+++ b/rrdtool.roles
@@ -1,4 +1,4 @@
-USER=rrdtool:status,rrdtool:welcome,rrdtool:startstop
+USER=rrdtool:status,rrdtool:welcome,rrdtool:startstop,rrdtool:rrdinfo
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
+ADMIN=rrdtool:status,rrdtool:welcome,rrdtool:startstop,rrdtool:config,rrdtool:listrrd,rrdtool:expert,rrdtool:delete,rrdtool:createrrd,rrdtool:rrdinfo