summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMika Havela <mika.havela@gmail.com>2009-07-07 14:29:33 +0000
committerMika Havela <mika.havela@gmail.com>2009-07-07 14:29:33 +0000
commitedeb226c2a079510abd99e86fd9a6304de0e6246 (patch)
treef32395e788ca339c4eff0e59ed88687a00c2dc6a
parent4000a354bdabce4cfaaac2c672a689d9bab8b910 (diff)
downloadacf-rrdtool-edeb226c2a079510abd99e86fd9a6304de0e6246.tar.bz2
acf-rrdtool-edeb226c2a079510abd99e86fd9a6304de0e6246.tar.xz
Prepare a view to list available graphs.
Graphs are sectioned into groups. Each group has a heading. Under each group you get a list of available graphs.
-rw-r--r--rrdtool-controller.lua4
-rw-r--r--rrdtool-listgraphs-html.lsp28
-rw-r--r--rrdtool-status-html.lsp4
-rw-r--r--rrdtool.roles4
4 files changed, 38 insertions, 2 deletions
diff --git a/rrdtool-controller.lua b/rrdtool-controller.lua
index 9d00065..e4dfcf1 100644
--- a/rrdtool-controller.lua
+++ b/rrdtool-controller.lua
@@ -41,3 +41,7 @@ end
function rrdinfo(self)
return self:redirect_to_referrer(self.model.rrd_info(self, self.clientdata.filename, sessiondata.userinfo.userid))
end
+
+function listgraphs(self)
+ return self.model.list_graphs()
+end
diff --git a/rrdtool-listgraphs-html.lsp b/rrdtool-listgraphs-html.lsp
new file mode 100644
index 0000000..9d41cfc
--- /dev/null
+++ b/rrdtool-listgraphs-html.lsp
@@ -0,0 +1,28 @@
+<% local data, 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(data))
+io.write("</span>")
+--]]
+%>
+
+<% icon="/skins/static/tango/16x16/apps/utilities-system-monitor.png" %>
+
+<H1>Graphs</H1>
+<%
+for grp,v in pairs(data) do
+%>
+<H2><% if (#v.label > 0) then io.write(tostring(v.label)) else io.write(grp) end %></H2>
+ <% for k,graph in pairs(v.value) do %>
+ <DL><DT>
+ <A HREF="viewgraph?group=<%= grp %>&id=<%= k %>"><IMG SRC='<%= icon %>' width='16' height='16'> <% io.write(graph.label or "Unknown") %></A></DT>
+ <DD><% io.write(graph.descr or "") %></DD>
+ </DL>
+ <% end %>
+<% end %>
+
+
diff --git a/rrdtool-status-html.lsp b/rrdtool-status-html.lsp
index b478473..5cbff7f 100644
--- a/rrdtool-status-html.lsp
+++ b/rrdtool-status-html.lsp
@@ -10,3 +10,7 @@ require("viewfunctions")
displayitem(data.value.version)
%>
</DL>
+
+<% if viewlibrary and viewlibrary.dispatch_component then
+ viewlibrary.dispatch_component("listgraphs")
+end %>
diff --git a/rrdtool.roles b/rrdtool.roles
index 49c59e7..fc39fff 100644
--- a/rrdtool.roles
+++ b/rrdtool.roles
@@ -1,4 +1,4 @@
-USER=rrdtool:status,rrdtool:welcome,rrdtool:startstop,rrdtool:rrdinfo
+USER=rrdtool:status,rrdtool:welcome,rrdtool:startstop,rrdtool:rrdinfo,rrdtool:listgraphs
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
+ADMIN=rrdtool:status,rrdtool:welcome,rrdtool:startstop,rrdtool:config,rrdtool:listrrd,rrdtool:expert,rrdtool:delete,rrdtool:createrrd,rrdtool:rrdinfo,rrdtool:listgraphs