gluon-packages/luci/config-mode/files/usr/lib/lua/luci/tools/ffhl-wizard/nav.lua

44 lines
1.1 KiB
Lua
Raw Normal View History

2012-07-24 00:23:26 +02:00
module("luci.tools.ffhl-wizard.nav", package.seeall)
2012-05-22 19:28:02 +02:00
function maybe_redirect_to_successor()
2012-07-24 00:23:26 +02:00
local pre, suc = get()
if suc then
luci.http.redirect(luci.dispatcher.build_url("wizard", suc.href))
2012-05-22 19:28:02 +02:00
end
end
2012-07-24 00:23:26 +02:00
function get()
2012-05-22 19:28:02 +02:00
local disp = require "luci.dispatcher"
local request = disp.context.path
local category = request[1]
local cattree = category and disp.node(category)
2012-07-24 00:23:26 +02:00
local childs = disp.node_childs(cattree)
local predecessor = nil
local successor = nil
if #childs > 0 then
local found_pre = false
for i, r in ipairs(childs) do
local nnode = cattree.nodes[r]
nnode.href = r
2012-05-22 19:28:02 +02:00
if r == request[2] then
2012-07-24 00:23:26 +02:00
found_pre = true
2012-05-22 19:28:02 +02:00
elseif found_pre and successor == nil then
2012-07-24 00:23:26 +02:00
successor = nnode
2012-05-22 19:28:02 +02:00
end
2012-07-24 00:23:26 +02:00
2012-05-22 19:28:02 +02:00
if not found_pre then
2012-07-24 00:23:26 +02:00
predecessor = nnode
2012-05-22 19:28:02 +02:00
end
2012-07-24 00:23:26 +02:00
end
end
2012-05-22 19:28:02 +02:00
return predecessor, successor
end