From c1361dd9a6740d3305da1bb314eec8f50c56f555 Mon Sep 17 00:00:00 2001 From: Mike Mason Date: Fri, 7 Mar 2008 22:45:58 +0000 Subject: Got the menu system somewhat working. Some of the matching is a bit off. Next work on the access deny... git-svn-id: svn://svn.alpinelinux.org/acf/core/trunk@828 ab2d0c66-481e-0410-8bed-d214d4d58bed --- app/acf_www-controller.lua | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) (limited to 'app/acf_www-controller.lua') diff --git a/app/acf_www-controller.lua b/app/acf_www-controller.lua index 5170175..4ade8f6 100644 --- a/app/acf_www-controller.lua +++ b/app/acf_www-controller.lua @@ -32,25 +32,31 @@ local function build_menus(self) --lets apply permissions - for a,b in pairs(sessiondata.menu.mainmenu) do +for a,b in pairs(sessiondata.menu.mainmenu) do for k,v in pairs(temp) do local control,acti = string.match(v,"(%a+):(%a+)") - if sessiondata.menu.mainmenu[a].controller == control then + if sessiondata.menu.mainmenu[a].controller == control then --test action - if sessiondata.menu.mainmenu[a].action == acti then - sessiondata.menu.mainmenu[a].match = "yes" + if sessiondata.menu.mainmenu[a].action == acti then + sessiondata.menu.mainmenu[a].match = "yes" + break + else + sessiondata.menu.mainmenu[a].match = "no" + end else --- sessiondata.menu.mainmenu[a] = nil sessiondata.menu.mainmenu[a].match = "no" end - else - sessiondata.menu.mainmenu[a].match = "no" - end + if sessiondata.menu.mainmenu[a].controller == "menuhints" then + sessiondata.menu.mainmenu[a].match = "yes" end end - end + if sessiondata.menu.mainmenu[a].match == "no" then + table.remove(sessiondata.menu.mainmenu,a) end +end + + else --we don't need to figure out what permission have it is in sessiondata local temp = format.string_to_table(sessiondata.userinfo.perm,",") -- cgit v1.2.3