summaryrefslogtreecommitdiffhomepage
path: root/modules/luci-base/luasrc
diff options
context:
space:
mode:
Diffstat (limited to 'modules/luci-base/luasrc')
-rw-r--r--modules/luci-base/luasrc/controller/admin/index.lua12
1 files changed, 12 insertions, 0 deletions
diff --git a/modules/luci-base/luasrc/controller/admin/index.lua b/modules/luci-base/luasrc/controller/admin/index.lua
index 68bbd38a71..736d0cdccf 100644
--- a/modules/luci-base/luasrc/controller/admin/index.lua
+++ b/modules/luci-base/luasrc/controller/admin/index.lua
@@ -182,3 +182,15 @@ function action_ubus()
luci.http.prepare_content("application/json")
luci.http.write_json(response)
end
+
+function action_menu()
+ local dsp = require "luci.dispatcher"
+ local utl = require "luci.util"
+ local http = require "luci.http"
+
+ local acls = utl.ubus("session", "access", { ubus_rpc_session = http.getcookie("sysauth") })
+ local menu = dsp.menu_json(acls or {}) or {}
+
+ http.prepare_content("application/json")
+ http.write_json(menu)
+end