* luci/statistics: moving the graph controller to admin caused the images to be gener...
authorJo-Philipp Wich <jow@openwrt.org>
Wed, 4 Jun 2008 22:41:58 +0000 (22:41 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Wed, 4 Jun 2008 22:41:58 +0000 (22:41 +0000)
* luci/core: store the actual dispatching path to .path in node() - this permits dispatcher modules to get the canonical path as luci.dispatcher.dispatched.path

applications/luci-statistics/luasrc/controller/luci_statistics/luci_statistics.lua
libs/web/luasrc/dispatcher.lua

index ae1679b..df20d58 100644 (file)
@@ -70,7 +70,10 @@ function index()
 
        
        -- output views
 
        
        -- output views
-       entry( { "admin", "statistics", "graph" }, call("statistics_index"), _i18n("graphs"), 80).i18n = "statistics"
+       local page = entry( { "admin", "statistics", "graph" }, call("statistics_index"), _i18n("graphs"), 80)
+             page.i18n     = "statistics"
+             page.setuser  = "nobody"
+             page.setgroup = "nogroup"
 
        local vars = luci.http.formvalues()
        local span = vars.timespan or nil
 
        local vars = luci.http.formvalues()
        local span = vars.timespan or nil
@@ -142,13 +145,14 @@ function statistics_render()
 
        local vars  = luci.http.formvalues()
        local req   = luci.dispatcher.request 
 
        local vars  = luci.http.formvalues()
        local req   = luci.dispatcher.request 
+       local path  = luci.dispatcher.dispatched.path
        local uci   = luci.model.uci.Session()
        local spans = luci.util.split( uci:get( "luci_statistics", "collectd_rrdtool", "RRATimespans" ), "%s+", nil, true )
        local span  = vars.timespan or uci:get( "luci_statistics", "rrdtool", "default_timespan" ) or spans[1]
        local graph = luci.statistics.rrdtool.Graph( luci.util.parse_units( span ) )
 
        local uci   = luci.model.uci.Session()
        local spans = luci.util.split( uci:get( "luci_statistics", "collectd_rrdtool", "RRATimespans" ), "%s+", nil, true )
        local span  = vars.timespan or uci:get( "luci_statistics", "rrdtool", "default_timespan" ) or spans[1]
        local graph = luci.statistics.rrdtool.Graph( luci.util.parse_units( span ) )
 
-       local plugin    = req[4]
-       local instances = { req[5] }
+       local plugin    = path[4]
+       local instances = { path[5] }
        local images    = { }
 
        -- no instance requested, find all instances
        local images    = { }
 
        -- no instance requested, find all instances
index 025ae38..ef6c688 100644 (file)
@@ -336,6 +336,8 @@ function node(...)
                c = c.nodes[v]
        end
 
                c = c.nodes[v]
        end
 
+       c.path = arg
+
        return c
 end
 
        return c
 end