small-package/luci-app-quickstart/luasrc/controller/quickstart.lua

51 lines
2.2 KiB
Lua
Raw Normal View History

2022-01-21 20:30:46 +08:00
local http = require "luci.http"
module("luci.controller.quickstart", package.seeall)
local page_index = {"admin", "quickstart", "pages"}
function index()
2022-02-15 20:30:43 +08:00
if luci.sys.call("pgrep quickstart >/dev/null") == 0 then
entry({"admin", "quickstart"}, call("redirect_index"), _("QuickStart"), 1)
entry({"admin", "network_guide"}, call("networkguide_index"), _("NetworkGuide"), 2)
2022-06-15 20:18:39 +08:00
entry({"admin", "quickstart", "pages"}, call("quickstart_index", {index={"admin", "quickstart", "pages"}})).leaf = true
entry({"admin", "network_guide", "pages"}, call("quickstart_index", {index={"admin", "network_guide", "pages"}})).leaf = true
2022-03-18 18:00:15 +08:00
if nixio.fs.access("/usr/lib/lua/luci/view/quickstart/main_dev.htm") then
2022-06-15 20:18:39 +08:00
entry({"admin", "quickstart", "dev"}, call("quickstart_dev", {index={"admin", "quickstart", "dev"}})).leaf = true
entry({"admin", "network_guide", "dev"}, call("quickstart_dev", {index={"admin", "network_guide", "dev"}})).leaf = true
2022-03-18 18:00:15 +08:00
end
2022-07-01 20:20:03 +08:00
entry({"admin", "nas", "raid"}, call("quickstart_index", {index={"admin", "nas"}}), _("RAID"), 10).leaf = true
2022-02-15 20:30:43 +08:00
else
entry({"admin", "quickstart"})
entry({"admin", "quickstart", "pages"}, call("redirect_fallback")).leaf = true
end
2022-01-21 20:30:46 +08:00
end
function networkguide_index()
2022-06-15 20:18:39 +08:00
luci.http.redirect(luci.dispatcher.build_url("admin","network_guide","pages","network"))
2022-01-21 20:30:46 +08:00
end
function redirect_index()
luci.http.redirect(luci.dispatcher.build_url(unpack(page_index)))
end
2022-02-15 20:30:43 +08:00
function redirect_fallback()
luci.http.redirect(luci.dispatcher.build_url("admin","status"))
end
2022-06-15 20:18:39 +08:00
function quickstart_index(param)
local jsonc = require "luci.jsonc"
local features = { "_lua_force_array_" }
if luci.sys.call("which ota >/dev/null 2>&1") == 0 then
features[#features+1] = "ota"
end
if luci.sys.call("[ -d /ext_overlay ] >/dev/null 2>&1") == 0 then
features[#features+1] = "sandbox"
end
luci.template.render("quickstart/main", {prefix=luci.dispatcher.build_url(unpack(param.index)),features=jsonc.stringify(features)})
2022-03-18 18:00:15 +08:00
end
2022-06-15 20:18:39 +08:00
function quickstart_dev(param)
luci.template.render("quickstart/main_dev", {prefix=luci.dispatcher.build_url(unpack(param.index))})
2022-03-18 18:00:15 +08:00
end