This commit is contained in:
github-actions[bot] 2021-04-21 12:20:38 +00:00
parent 0ed7dac134
commit 91d8b3d5c4
87 changed files with 7777 additions and 7469 deletions

View File

@ -5,7 +5,9 @@ function index()
return
end
entry({"admin","services","mia"},cbi("mia"),_("Internet Access Schedule Control"),30).dependent=true
local page = entry({"admin","services","mia"},cbi("mia"),_("Internet Access Schedule Control"),30)
page.dependent = true
page.acl_depends = { "luci-app-accesscontrol" }
entry({"admin","services","mia","status"},call("act_status")).leaf=true
end

View File

@ -3,7 +3,10 @@ local fs=require"nixio.fs"
local http=require"luci.http"
local uci=require"luci.model.uci".cursor()
function index()
entry({"admin", "services", "AdGuardHome"},alias("admin", "services", "AdGuardHome", "base"),_("AdGuard Home"), 10).dependent = true
local page = entry({"admin", "services", "AdGuardHome"},alias("admin", "services", "AdGuardHome", "base"),_("AdGuard Home"))
page.order = 10
page.dependent = true
page.acl_depends = { "luci-app-adguardhome" }
entry({"admin","services","AdGuardHome","base"},cbi("AdGuardHome/base"),_("Base Setting"),1).leaf = true
entry({"admin","services","AdGuardHome","log"},form("AdGuardHome/log"),_("Log"),2).leaf = true
entry({"admin","services","AdGuardHome","manual"},cbi("AdGuardHome/manual"),_("Manual Config"),3).leaf = true

View File

@ -8,8 +8,9 @@ function index()
return
end
entry({"admin", "services", "shairport-sync"}, cbi("shairport-sync"), _("AirPlay 2 Receiver")).dependent = true
entry({"admin", "services", "shairport-sync"}, cbi("shairport-sync"), _("AirPlay 2 Receiver"))
page.dependent = true
page.acl_depends = { "luci-app-airplay2" }
entry({"admin","services","shairport-sync","run"},call("act_status")).leaf=true
end

View File

@ -1,5 +1,5 @@
module("luci.controller.airwhu", package.seeall)
function index()
entry({"admin", "services", "AirWHU"}, cbi("airwhu"), _("AirWHU"), 100)
entry({"admin", "services", "AirWHU"}, cbi("airwhu"), _("AirWHU"), 100).acl_depends = { "luci-app-airwhu" }
end

View File

@ -1,4 +1,4 @@
module("luci.controller.aliddns",package.seeall)
function index()
entry({"admin","services","aliddns"},cbi("aliddns"),_("AliDDNS"),58)
entry({"admin","services","aliddns"},cbi("aliddns"),_("AliDDNS"),58).acl_depends = { "luci-app-aliddns" }
end

View File

@ -23,6 +23,7 @@ function index()
local page = entry({"admin", "nas", "amule"}, cbi("amule"), _("aMule Settings"))
page.dependent = true
page.acl_depends = { "luci-app-amule" }
entry( {"admin", "nas", "amule", "logview"}, call("logread") ).leaf = true
entry( {"admin", "nas", "amule", "status"}, call("get_pid") ).leaf = true
entry( {"admin", "nas", "amule", "amulecmd"}, call("amulecmd") ).leaf = true

View File

@ -9,5 +9,7 @@ function index()
if not nixio.fs.access("/etc/config/arpbind") then
return
end
entry({"admin", "network", "arpbind"}, cbi("arpbind"), _("IP/MAC Binding"), 45).dependent = true
local page = entry({"admin", "network", "arpbind"}, cbi("arpbind"), _("IP/MAC Binding"), 45)
page.dependent = true
page.acl_depends = { "luci-app-arpbind" }
end

View File

@ -6,8 +6,11 @@ local brook = require "luci.model.cbi.brook_server.api.brook"
function index()
if not nixio.fs.access("/etc/config/brook_server") then return end
entry({"admin", "vpn"}, firstchild(), "VPN", 45).dependent = false
entry({"admin", "vpn", "brook_server"}, cbi("brook_server/index"),
_("Brook Server"), 3).dependent = true
local page = entry({"admin", "vpn", "brook_server"}, cbi("brook_server/index"),
_("Brook Server"))
page.order = 3
page.dependent = true
page.acl_depends = { "luci-app-brook-server" }
entry({"admin", "vpn", "brook_server", "config"}, cbi("brook_server/config")).leaf =
true

View File

@ -10,7 +10,10 @@ function index()
end
if nixio.fs.access("/usr/bin/brook") then
entry({"admin", "services", "brook"},alias("admin", "services", "brook", "client"),_("Brook"), 10).dependent = true
local page = entry({"admin", "services", "brook"},alias("admin", "services", "brook", "client"),_("Brook"))
page.order = 10
page.dependent = true
page.acl_depends = { "luci-app-brook" }
entry({"admin", "services", "brook", "client"},arcombine(cbi("brook/client"), cbi("brook/client-config")),_("Brook Tproxy"), 10).leaf = true
else
return

View File

@ -4,5 +4,8 @@
module("luci.controller.cd8021x", package.seeall)
function index()
entry({"admin", "network", "cd8021x"}, cbi("cd8021x"), _("802.1x Client"), 100).dependent = true
end
local page = entry({"admin", "network", "cd8021x"}, cbi("cd8021x"), _("802.1x Client"))
page.order = 100
page.dependent = true
page.acl_depends = { "luci-app-cd8021x" }
end

View File

@ -10,4 +10,5 @@ function index()
page = entry({"admin", "nas", "cifs"}, cbi("cifs"), _("Mount SMB NetShare"))
page.dependent = true
page.acl_depends = { "luci-app-cifs-mount" }
end

View File

@ -13,4 +13,5 @@ function index()
page = entry({"admin", "services", "cifs"}, cbi("cifs"), _("Mounting NAT drives"))
page.dependent = true
page.acl_depends = { "luci-app-cifs" }
end

View File

@ -5,9 +5,10 @@ function index()
if not nixio.fs.access("/etc/config/cpulimit") then
return
end
local page = entry({"admin", "system", "cpulimit"}, cbi("cpulimit"), luci.i18n.translate("cpulimit"), 65)
page.i18n = "cpulimit"
page.dependent = true
page.acl_depends = { "luci-app-cpulimit" }
end

View File

@ -3,7 +3,9 @@ function index()
if not nixio.fs.access("/etc/config/dnsforwarder") then
return
end
entry({"admin", "services", "dnsforwarder"},alias("admin", "services", "dnsforwarder","general"),_("Dnsforwarder")).dependent = true
local page = entry({"admin", "services", "dnsforwarder"},alias("admin", "services", "dnsforwarder","general"),_("Dnsforwarder"))
page.dependent = true
page.acl_depends = { "luci-app-dnsforwarder" }
entry({"admin", "services", "dnsforwarder","general"}, cbi("dnsforwarder/general"),_("General"),10).leaf = true
entry({"admin", "services", "dnsforwarder","log"}, cbi("dnsforwarder/log"),_("LOG"),30).leaf = true

View File

@ -6,8 +6,9 @@ function index()
return
end
entry({"admin", "services", "familycloud"},firstchild(), _("天翼家庭云/云盘提速"), 80).dependent = false
local page = entry({"admin", "services", "familycloud"},firstchild(), _("天翼家庭云/云盘提速"), 80)
page.dependent = false
page.acl_depends = { "luci-app-familycloud" }
entry({"admin", "services", "familycloud", "general"},cbi("familycloud"), _("Base Setting"), 1)
entry({"admin", "services", "familycloud", "log"},form("familycloudlog"), _("Log"), 2)

View File

@ -8,6 +8,7 @@ function index()
page = entry({"admin", "nas", "fileassistant"}, template("fileassistant"), _("文件助手"), 1)
page.i18n = "base"
page.dependent = true
page..acl_depends = { "luci-app-fileassistant" }
page = entry({"admin", "nas", "fileassistant", "list"}, call("fileassistant_list"), nil)
page.leaf = true

View File

@ -0,0 +1,11 @@
{
"luci-app-fileassistant": {
"description": "Grant UCI access for luci-app-fileassistant",
"read": {
"uci": [ "fileassistant" ]
},
"write": {
"uci": [ "fileassistant" ]
}
}
}

View File

@ -8,6 +8,7 @@ function index()
local page
page = entry({"admin", "nas", "filebrowser"}, cbi("filebrowser"), _("文件管理器"), 100)
page.dependent = true
page.acl_depends = { "luci-app-filebrowser" }
entry({"admin","nas","filebrowser","status"},call("act_status")).leaf=true
end

View File

@ -8,5 +8,5 @@ Modify: ayongwifi@126.com www.openwrtdl.com
module("luci.controller.filetransfer", package.seeall)
function index()
entry({"admin", "system", "filetransfer"}, form("updownload"), _("FileTransfer"),89)
entry({"admin", "system", "filetransfer"}, form("updownload"), _("FileTransfer"),89).acl_depends = { "luci-app-filetransfer" }
end

View File

@ -0,0 +1,11 @@
{
"luci-app-filetransfer": {
"description": "Grant UCI access for luci-app-filetransfer",
"read": {
"uci": [ "filetransfer" ]
},
"write": {
"uci": [ "filetransfer" ]
}
}
}

View File

@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-godproxy
PKG_VERSION:=3.8.5
PKG_RELEASE:=3-20210325
PKG_RELEASE:=3-20210421
include $(INCLUDE_DIR)/package.mk

View File

@ -1,3 +1,7 @@
## 更新2021年4月21日
感谢 [Beginner-Go](https://github.com/Beginner-Go) 大佬前面几次的升级。
修复每日规则和静态规无效问题。
## 更新2021年3月23日
感谢 [maple's sky](https://github.com/maplesky) 大佬提供技术支持,修复状态栏不动态问题。

View File

@ -1,38 +1,43 @@
2021-04-19 01:04:07: ------------------- 规则更新 -----------------------
2021-04-19 01:04:07: ====================================================
2021-04-19 01:04:07: 开始更新koolproxy的规则请等待...
2021-04-19 01:04:07: ---------------------------------------------------------------------------------------
2021-04-19 01:04:09: ABP规则的本地版本号 202104160052
2021-04-19 01:04:09: ABP规则的在线版本号 202104190052
2021-04-19 01:04:09: 检测到 ABP规则 已更新,现在开始更新...
2021-04-19 01:04:09: 将临时的ABP规则文件移动到指定位置
2021-04-19 01:04:09: yhosts规则本地版本号 202102272009
2021-04-19 01:04:09: yhosts规则在线版本号 #version: 202104181130
2021-04-19 01:04:09: 检测到 yhosts规则 已更新,现在开始更新...
2021-04-19 01:04:09: 将临时文件覆盖到原始yhosts文件
2021-04-19 01:04:09: 远程视频规则md5
2021-04-19 01:04:09: 您本地视频规则md5742d507e87a77825498fc426308b7472
2021-04-19 01:04:09: 检测到新版视频规则.开始更新..........
2021-04-19 01:04:09: 您下载的视频规则md5d41d8cd98f00b204e9800998ecf8427e
2021-04-19 01:04:09: 视频规则md5校验不通过...
2021-04-19 01:04:10: fanboy规则本地版本号 202103250121
2021-04-19 01:04:10: fanboy规则在线版本号
2021-04-19 01:04:10: fanboy规则 文件下载失败!
2021-04-19 01:04:10: antiad规则本地版本号 20210415223038
2021-04-19 01:04:10: antiad规则在线版本号 20210418140127
2021-04-19 01:04:10: 检测到新版本 antiad规则 列表,开始更新...
2021-04-19 01:04:10: 将临时文件覆盖到原始 antiad规则 文件
2021-04-19 01:04:10: 跳过优化 fanboy规则。。。。。
2021-04-19 01:04:10: 正在优化 ABP规则。。。。。
2021-04-19 01:04:13: 正在优化 补充规则yhosts。。。。。
2021-04-19 01:04:13: 正在优化 补充规则antiad。。。。。
2021-04-19 01:04:13: 所有规则更新并优化完毕!
2021-04-19 01:04:13: ====================================================
2021-04-19 01:04:17: -------------------Yhosts规则 version !version: 202104181130
2021-04-19 01:04:17: -------------------ABP规则 version 202104190052
2021-04-19 01:04:17: -------------------Fanboy规则 version 202103250121
2021-04-19 01:04:17: -------------------Antiad规则 version 20210418140127
2021-04-19 01:04:17: -------------------静态规则 version
2021-04-19 01:04:17: -------------------乘风视频 version 202104081
2021-04-19 01:04:17: ------------------- 内置规则更新成功! -------------------
2021-04-19 01:04:17: ------------------- 规则更新成功! -------------------
2021-04-21 05:53:11: ------------------- 规则更新 -----------------------
2021-04-21 05:53:11: ====================================================
2021-04-21 05:53:11: 开始更新koolproxy的规则请等待...
2021-04-21 05:53:11: ---------------------------------------------------------------------------------------
2021-04-21 05:53:12: ABP规则的本地版本号 202104210522
2021-04-21 05:53:12: ABP规则的在线版本号 202104210542
2021-04-21 05:53:12: 检测到 ABP规则 已更新,现在开始更新...
2021-04-21 05:53:12: 将临时的ABP规则文件移动到指定位置
2021-04-21 05:53:13: yhosts规则本地版本号 !version: 202104181130
2021-04-21 05:53:13: yhosts规则在线版本号 #version: 202104181130
2021-04-21 05:53:13: 检测到 yhosts规则 已更新,现在开始更新...
2021-04-21 05:53:13: 将临时文件覆盖到原始yhosts文件
2021-04-21 05:53:13: 远程视频规则md5
2021-04-21 05:53:13: 您本地视频规则md5742d507e87a77825498fc426308b7472
2021-04-21 05:53:13: 检测到新版视频规则.开始更新..........
2021-04-21 05:53:13: 您下载的视频规则md5d41d8cd98f00b204e9800998ecf8427e
2021-04-21 05:53:13: 视频规则md5校验不通过...
2021-04-21 05:53:14: fanboy规则本地版本号 202103250121
2021-04-21 05:53:14: fanboy规则在线版本号
2021-04-21 05:53:14: fanboy规则 文件下载失败!
2021-04-21 05:53:15: antiad规则本地版本号 20210419102607
2021-04-21 05:53:15: antiad规则在线版本号 20210419102607
2021-04-21 05:53:15: 检测到 antiad规则 本地版本号和在线版本号相同,那还更新个毛啊!
2021-04-21 05:53:15: StevenBlack规则本地版本号
2021-04-21 05:53:15: StevenBlack规则在线版本号 20 April
2021-04-21 05:53:15: 检测到新版本 StevenBlack规则 列表,开始更新...
2021-04-21 05:53:15: 将临时文件覆盖到原始 StevenBlack规则 文件
2021-04-21 05:53:15: 跳过优化 fanboy规则。。。。。
2021-04-21 05:53:15: 正在优化 ABP规则。。。。。
2021-04-21 05:53:18: 正在优化 补充规则yhosts。。。。。
2021-04-21 05:53:18: 跳过优化 补充规则antiad。。。。。
2021-04-21 05:53:18: 跳过优化 补充规则adwars。。。。。
2021-04-21 05:53:18: 跳过优化 补充规则ADgkStevenBlack。。。。。
2021-04-21 05:53:18: 所有规则更新并优化完毕!
2021-04-21 05:53:18: ====================================================
2021-04-21 05:53:22: -------------------Yhosts规则 version !version: 202104181130
2021-04-21 05:53:22: -------------------ABP规则 version 202104210542
2021-04-21 05:53:22: -------------------Fanboy规则 version 202103250121
2021-04-21 05:53:22: -------------------Antiad规则 version 20210419102607
2021-04-21 05:53:22: -------------------静态规则 version 2020-02-27 23:00
2021-04-21 05:53:22: -------------------乘风视频 version 202104211
2021-04-21 05:53:22: ------------------- 内置规则更新成功! -------------------
2021-04-21 05:53:22: ------------------- 规则更新成功! -------------------

View File

@ -12,6 +12,7 @@ function index()
local page
page = entry({"admin", "services", "gost"}, cbi("gost"), _("Gost"), 100)
page.dependent = true
page.acl_depends = { "luci-app-gost" }
entry({"admin", "services", "gost", "status"},call("act_status")).leaf=true
end

View File

@ -3,5 +3,7 @@ function index()
if not nixio.fs.access("/etc/config/haproxy") then
return
end
entry({"admin", "services", "haproxy"}, cbi("haproxy"), _("HAProxy")).dependent = true
local page = entry({"admin", "services", "haproxy"}, cbi("haproxy"), _("HAProxy"))
page.dependent = true
page.acl_depends = { "luci-app-haproxy-tcp" }
end

View File

@ -7,7 +7,9 @@ function index()
end
entry({"admin", "vpn"}, firstchild(), "VPN", 45).dependent = false
entry({"admin", "vpn", "ipsec-server"}, cbi("ipsec-server/ipsec-server"), _("IPSec VPN Server"), 80).dependent=false
entry({"admin", "vpn", "ipsec-server"}, cbi("ipsec-server/ipsec-server"), _("IPSec VPN Server"), 80)
page.dependent = false
page.acl_depends = { "luci-app-ipsec-vpnd" }
entry({"admin", "vpn", "ipsec-server","status"},call("act_status")).leaf=true
end

View File

@ -5,9 +5,12 @@ function index()
if not nixio.fs.access("/etc/config/ipsec") then return end
entry({"admin", "vpn"}, firstchild(), "VPN", 45).dependent = false
entry({"admin", "vpn", "ipsec-server"},
local page = entry({"admin", "vpn", "ipsec-server"},
alias("admin", "vpn", "ipsec-server", "settings"),
_("IPSec VPN Server"), 49).dependent = false
_("IPSec VPN Server"))
page.order = 49
page.dependent = false
page.acl_depends = { "luci-app-ipsec-vpnserver-manyusers" }
entry({"admin", "vpn", "ipsec-server", "settings"},
cbi("ipsec-server/settings"), _("General Settings"), 10).leaf = true
entry({"admin", "vpn", "ipsec-server", "users"}, cbi("ipsec-server/users"),

View File

@ -9,4 +9,5 @@ function index()
local page
page = entry({"admin","system","k3screenctrl"}, cbi("k3screenctrl"), _("Screen"), 60)
page.dependent = true
page.acl_depends = { "luci-app-k3screenctrl" }
end

View File

@ -6,5 +6,5 @@ function index()
if not nixio.fs.access("/etc/config/k3usb") then
return
end
entry({"admin","system","k3usb"}, cbi("k3usb"), _("k3usb"),60)
entry({"admin","system","k3usb"}, cbi("k3usb"), _("k3usb"),60).acl_depends = { "luci-app-k3usb" }
end

View File

@ -11,9 +11,10 @@ function index()
return
end
entry({"admin", "services", "kcptun"},
firstchild(), _("Kcptun Client")).dependent = false
local page = entry({"admin", "services", "kcptun"},
firstchild(), _("Kcptun Client"))
page.dependent = false
page.acl_depends = { "luci-app-kcptun" }
entry({"admin", "services", "kcptun", "settings"},
cbi("kcptun/settings"), _("Settings"), 1)

View File

@ -24,7 +24,7 @@ define Package/luci-app-macvlan
SUBMENU:=Macvlan
TITLE:=LuCI Support for macvlan
PKGARCH:=all
DEPENDS:=+kmod-macvlan +busybox +@BUSYBOX_CUSTOM +@BUSYBOX_CONFIG_VCONFIG
DEPENDS:=+kmod-macvlan +kmod-ipvlan +busybox +@BUSYBOX_CUSTOM +@BUSYBOX_CONFIG_VCONFIG
endef
define Package/luci-app-macvlan/description

View File

@ -7,12 +7,25 @@ s.addremove = true
s.anonymous = true
s.template = "cbi/tblsection"
hn = s:option(Value, "ifname", translate("Interface"))
hn.datatype = "string"
hn.rmempty = false
o = s:option(Value, "ifname", translate("Interface"))
o.datatype = "string"
o.rmempty = false
ip = s:option(Value, "macvlan", translate("Index"))
ip.datatype = "and(uinteger,min(0),max(31))"
ip.rmempty = false
o = s:option(Value, "index", translate("Index"))
o.datatype = "and(uinteger,min(0),max(255))"
o.rmempty = false
o = s:option(ListValue, "type", translate("Type"))
o:value("macvlan", translate("macvlan"))
o:value("ipvlan", translate("ipvlan"))
o = s:option(ListValue, "mode", translate("Mode"))
o:value("l2", translate("l2"))
o:value("l3", translate("l3"))
o = s:option(ListValue, "flag", translate("Flag"))
o:value("bridge", translate("bridge"))
o:value("private", translate("private"))
o:value("vepa", translate("vepa"))
return m

View File

@ -20,16 +20,20 @@ stop_macvlan() {
add_macvlan() {
local cfg="$1"
local ifname macvlan
local ifname index type mode flag
local mvname
config_get ifname "$cfg" ifname
config_get macvlan "$cfg" macvlan
config_get index "$cfg" index
config_get type "$cfg" type
config_get mode "$cfg" mode
config_get flag "$cfg" flag
test -n "$ifname" || return 1
test -n "$macvlan" || return 1
test -n "$index" || return 1
test -n "$type" || return 1
mvname="mvlan${macvlan}${ifname}"
mvname="${type}${index}${ifname}"
echo "$ifname" | grep -q "^[a-zA-Z].*\.[0-9]*$" && {
ifn=`echo $ifname | cut -d"." -f 1`
@ -38,13 +42,24 @@ add_macvlan() {
ifconfig $ifn up 2>/dev/null
vconfig set_name_type DEV_PLUS_VID_NO_PAD
vconfig add $ifn $iid 2>/dev/null && echo ip link del $ifname >>$MC
mvname="mvlan${macvlan}${ifn}t${iid}"
mvname="${type}${index}${ifn}t${iid}"
}
ifconfig $ifname >/dev/null 2>&1 || return 1
ifconfig $ifname up 2>/dev/null
ip link add link $ifname $mvname type macvlan 2>/dev/null && echo ip link del $mvname >>$MC
if [ "${type}" = "macvlan" ]; then
ip link add link $ifname $mvname type ${type} 2>/dev/null && echo ip link del $mvname >>$MC
elif [ "${type}" = "ipvlan" ]; then
case "$mode" in
"l2")
ip link add link $ifname $mvname type ${type} mode ${mode} ${flag} 2>/dev/null && echo ip link del $mvname >>$MC
;;
"l3")
ip link add link $ifname $mvname type ${type} 2>/dev/null && echo ip link del $mvname >>$MC
;;
esac
fi
}
start() {

View File

@ -0,0 +1,11 @@
{
"luci-app-mtwifi": {
"description": "Grant UCI access for luci-app-mtwifi",
"read": {
"uci": [ "wifi" ]
},
"write": {
"uci": [ "wifi" ]
}
}
}

View File

@ -7,8 +7,9 @@ function index()
return
end
entry({"admin", "nas", "forked-daapd"}, cbi("forked-daapd"), _("Music Remote Center")).dependent = true
local page = entry({"admin", "nas", "forked-daapd"}, cbi("forked-daapd"), _("Music Remote Center"))
page.dependent = true
page.acl_depends = { "luci-app-music-remote-center" }
entry({"admin","nas","forked-daapd","run"},call("act_status")).leaf=true
end

View File

@ -9,8 +9,9 @@ function index()
end
entry({"admin", "services", "mwan3helper"},alias("admin", "services", "mwan3helper", "client"),_("MWAN3 Helper"), 300).dependent = true
local page = entry({"admin", "services", "mwan3helper"},alias("admin", "services", "mwan3helper", "client"),_("MWAN3 Helper"), 300)
page.dependent = true
page.acl_depends = { "luci-app-mwan3helper" }
entry({"admin", "services", "mwan3helper", "client"},cbi("mwan3helper/client"),_("Settings"), 10).leaf = true
entry({"admin", "services", "mwan3helper", "lists"},cbi("mwan3helper/list"),_("IPSet Lists"), 20).leaf = true

View File

@ -8,4 +8,5 @@ function index()
end
local page = entry({"admin", "services", "mwol"}, cbi("mwol"), _("Mwol"))
page.dependent = true
page.acl_depends = { "luci-app-mwol" }
end

View File

@ -16,6 +16,7 @@ function index()
local page
page = entry({"admin", "vpn", "n2n_v2"}, cbi("n2n_v2"), _("N2N v2 VPN"), 45)
page.dependent = true
page..acl_depends = { "luci-app-n2n_v2" }
end
function n2n_status()

View File

@ -12,6 +12,7 @@ function index()
local page
page = entry({"admin", "services", "naiveproxy"}, cbi("naiveproxy"), _("NaiveProxy"), 100)
page.dependent = true
page.acl_depends = { "luci-app-naiveproxy" }
entry({"admin", "services", "naiveproxy", "status"},call("act_status")).leaf=true
end

View File

@ -4,5 +4,7 @@ function index()
if not nixio.fs.access("/etc/config/nfs") then
return
end
entry({"admin", "nas", "nfs"}, cbi("nfs"), _("NFS Manage"), 5).dependent = true
local page = entry({"admin", "nas", "nfs"}, cbi("nfs"), _("NFS Manage"), 5)
page.dependent = true
page.acl_depends = { "luci-app-nfs" }
end

View File

@ -5,7 +5,10 @@ function index()
if not nixio.fs.access("/etc/config/pingos") then return end
entry({"admin", "nas"}, firstchild(), "NAS", 44).dependent = false
entry({"admin", "nas", "pingos"}, cbi("pingos"), _("PingOS"), 3).dependent = true
local page = entry({"admin", "nas", "pingos"}, cbi("pingos"), _("PingOS"))
page.order = 3
page.dependent = true
page.acl_depends = { "luci-app-nginx-pingos" }
entry({"admin", "nas", "pingos", "status"}, call("act_status")).leaf = true
end

View File

@ -17,6 +17,8 @@ function index()
return
end
entry({"admin", "services", "ngrokc"}, cbi("ngrokc/overview"), _("Ngrok Settings")).dependent = true
local page = entry({"admin", "services", "ngrokc"}, cbi("ngrokc/overview"), _("Ngrok Settings"))
page.dependent = true
page.acl_depends = { "luci-app-ngrokc" }
entry({"admin", "services", "ngrokc", "detail"}, cbi("ngrokc/detail"), nil ).leaf = true
end

View File

@ -1,5 +1,5 @@
module("luci.controller.njitclient", package.seeall)
function index()
entry({"admin", "network", "njitclient"}, cbi("njitclient"), _("NJIT Client"), 100)
entry({"admin", "network", "njitclient"}, cbi("njitclient"), _("NJIT Client"), 100).acl_depends = { "luci-app-njitclient" }
end

View File

@ -7,6 +7,7 @@ local e
e=entry({"admin","services","nps"},cbi("nps"),_("Nps Setting"),100)
e.i18n="nps"
e.dependent=true
e.acl_depends = { "luci-app-nps" }
entry({"admin","services","nps","status"},call("status")).leaf=true
end
function status()

View File

@ -11,4 +11,5 @@ function index()
page = entry({"admin", "services", "oscam"}, cbi("oscam"), _("OSCAM"), 60)
page.dependent = true
page.acl_depends = { "luci-app-oscam" }
end

View File

@ -21,7 +21,10 @@ function index()
entry({"admin", "services", appname, "hide"}, call("hide_menu")).leaf = true
if not nixio.fs.access("/etc/config/passwall") then return end
if nixio.fs.access("/etc/config/passwall_show") then
entry({"admin", "services", appname}, alias("admin", "services", appname, "settings"), _("Pass Wall"), 1).dependent = true
local page = entry({"admin", "services", appname}, alias("admin", "services", appname, "settings"), _("Pass Wall"))
page.order = 1
page.dependent = true
page.acl_depends = { "luci-app-"..appname }
end
--[[ Client ]]
entry({"admin", "services", appname, "settings"}, cbi(appname .. "/client/global"), _("Basic Settings"), 1).dependent = true

View File

@ -6,7 +6,7 @@ function index()
entry({"admin", "services", "pppoe-server"},
alias("admin", "services", "pppoe-server", "settings"),
_("PPPoE Server"), 3)
_("PPPoE Server"), 3).acl_depends = { "luci-app-pppoe-server" }
entry({"admin", "services", "pppoe-server", "settings"},
cbi("pppoe-server/settings"), _("General Settings"), 10).leaf = true
entry({"admin", "services", "pppoe-server", "users"},

View File

@ -9,7 +9,9 @@ entry({"admin", "nas"}, firstchild(), "NAS", 44).dependent = false
local page
entry({"admin", "nas","ps3netsrv"},cbi("ps3netsrv"),_("PS3 NET Server"),40).dependent=true
page = entry({"admin", "nas","ps3netsrv"},cbi("ps3netsrv"),_("PS3 NET Server"),40)
page.dependent=true
page.acl_depends = { "luci-app-ps3netsrv" }
entry({"admin", "nas","ps3netsrv","status"},call("act_status")).leaf=true
end

View File

@ -4,7 +4,7 @@ function index()
if not nixio.fs.access("/etc/config/qbittorrent")then
return
end
entry({"admin","nas","qBittorrent"},cbi("qbittorrent"),_("qBittorrent"))
entry({"admin","nas","qBittorrent"},cbi("qbittorrent"),_("qBittorrent")).acl_depends = { "luci-app-qBittorrent" }
entry({"admin","nas","qBittorrent","status"},call("act_status")).leaf=true
end

View File

@ -10,6 +10,6 @@ function index()
local page = entry({"admin", "network", "qosv4"}, cbi("qosv4"), "QOSv4")
page.i18n = "qosv4"
page.dependent = true
page.acl_depends = { "luci-app-qosv4" }
end

View File

@ -3,5 +3,8 @@ module("luci.controller.rclone", package.seeall)
function index()
if not nixio.fs.access("/etc/config/rclone") then return end
entry({"admin", "nas"}, firstchild(), _("NAS") , 45).dependent = false
entry({"admin", "nas", "rclone"}, cbi("rclone"), _("Rclone"), 100 ).dependent = false
local page = entry({"admin", "nas", "rclone"}, cbi("rclone"), _("Rclone"))
page.order = 100
page.dependent = false
page.acl_depends = { "luci-app-rclone" }
end

View File

@ -18,7 +18,7 @@ function index()
alias("admin", "scutclient", "settings"),
"华南理工大学客户端",
mainorder
)
).acl_depends = { "luci-app-scutclient" }
entry({"admin", "scutclient", "settings"},
cbi("scutclient/scutclient"),
@ -36,7 +36,7 @@ function index()
alias("admin", "scutclient", "status"),
"华南理工大学客户端",
mainorder
)
).acl_depends = { "luci-app-scutclient" }
entry({"admin", "scutclient", "status"},
call("action_status"),

View File

@ -1,7 +1,7 @@
module("luci.controller.sms", package.seeall)
function index()
entry({"admin", "status", "sms"}, template("sms"), _("SMS Tool"), 100)
entry({"admin", "status", "sms"}, template("sms"), _("SMS Tool"), 100).acl_depends = { "luci-app-sms" }
end
function action_sms()

View File

@ -0,0 +1,11 @@
{
"luci-app-sms": {
"description": "Grant UCI access for luci-app-sms",
"read": {
"uci": [ "sms" ]
},
"write": {
"uci": [ "sms" ]
}
}
}

View File

@ -5,7 +5,7 @@ local http = require "luci.http"
function index()
if not nixio.fs.access("/etc/config/socat") then return end
entry({"admin", "network", "socat"}, cbi("socat/index"), _("Socat"), 100)
entry({"admin", "network", "socat"}, cbi("socat/index"), _("Socat"), 100).acl_depends = { "luci-app-socat" }
entry({"admin", "network", "socat", "config"}, cbi("socat/config")).leaf = true
entry({"admin", "network", "socat", "status"}, call("status")).leaf = true
end

View File

@ -7,7 +7,10 @@ function index()
return
end
entry({"admin", "vpn", "softethervpn5"},alias("admin", "vpn", "softethervpn5", "setting"),_("SoftEther VPN5"), 10).dependent = true
local page = entry({"admin", "vpn", "softethervpn5"},alias("admin", "vpn", "softethervpn5", "setting"),_("SoftEther VPN5"))
page.order = 10
page.dependent = true
page.acl_depends = { "luci-app-softethervpn5" }
entry({"admin", "vpn", "softethervpn5", "setting"},arcombine(cbi("softethervpn5/setting"), form("softethervpn5/setting-config")),_("VPN Setting"), 10).leaf = true
entry({"admin", "vpn", "softethervpn5", "server"},form("softethervpn5/server"),_("VPN Server"), 20).leaf = true

View File

@ -2,7 +2,9 @@ module("luci.controller.speederv2", package.seeall)
function index()
if nixio.fs.access("/etc/config/speederv2") then
entry({"admin", "services", "speederv2"}, firstchild(), _("speederv2-tunnel")).dependent = false
local page = entry({"admin", "services", "speederv2"}, firstchild(), _("speederv2-tunnel"))
page.dependent = false
page.acl_depends = { "luci-app-speederv2" }
entry({"admin", "services", "speederv2", "general"}, cbi("speederv2/general"), _("Settings"), 1)
entry({"admin", "services", "speederv2", "servers"}, arcombine(cbi("speederv2/servers"), cbi("speederv2/servers-details")), _("Configure Management"), 2).leaf = true
entry({"admin", "services", "speederv2", "status"}, call("action_status"))

View File

@ -6,7 +6,10 @@ function index()
if not nixio.fs.access("/etc/config/ssr_libev_server") then return end
entry({"admin", "vpn"}, firstchild(), "VPN", 45).dependent = false
entry({"admin", "vpn", "ssr_libev_server"}, cbi("ssr_libev_server/index"),
_("SSR Libev Server"), 2).dependent = true
_("SSR Libev Server"))
page.order = 2
page.dependent = true
page.acl_depends = { "luci-app-ssr-libev-server" }
entry({"admin", "vpn", "ssr_libev_server", "config"},
cbi("ssr_libev_server/config")).leaf = true

View File

@ -7,7 +7,9 @@ function index()
if not nixio.fs.access("/etc/config/ssr_mudb_server") then return end
entry({"admin", "vpn"}, firstchild(), "VPN", 45).dependent = false
if nixio.fs.access("/usr/share/ssr_mudb_server") then
entry({"admin", "vpn", "ssr_mudb_server"}, cbi("ssr_mudb_server/index"), _("SSR MuDB Server"), 2).dependent = true
local page = entry({"admin", "vpn", "ssr_mudb_server"}, cbi("ssr_mudb_server/index"), _("SSR MuDB Server"), 2)
page.dependent = true
page.acl_depends = { "luci-app-ssr-mudb-server" }
end
entry({"admin", "vpn", "ssr_mudb_server", "user"}, template("ssr_mudb_server/user")).leaf = true

View File

@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-ssr-plus
PKG_VERSION:=183
PKG_RELEASE:=10
PKG_RELEASE:=11
define Package/$(PKG_NAME)/conffiles
/etc/config/shadowsocksr

View File

@ -9,7 +9,7 @@ function index()
local page
page = entry({"admin", "services", "shadowsocksr"}, alias("admin", "services", "shadowsocksr", "client"), _("ShadowSocksR Plus+"), 10)
page.dependent = true
page.acl_depends = { "luci-app-ssr-plus" }
page.acl_depends = {"luci-app-ssr-plus"}
entry({"admin", "services", "shadowsocksr", "client"}, cbi("shadowsocksr/client"), _("SSR Client"), 10).leaf = true
entry({"admin", "services", "shadowsocksr", "servers"}, arcombine(cbi("shadowsocksr/servers", {autoapply = true}), cbi("shadowsocksr/client-config")), _("Severs Nodes"), 20).leaf = true
entry({"admin", "services", "shadowsocksr", "control"}, cbi("shadowsocksr/control"), _("Access Control"), 30).leaf = true
@ -21,11 +21,12 @@ function index()
entry({"admin", "services", "shadowsocksr", "subscribe"}, call("subscribe"))
entry({"admin", "services", "shadowsocksr", "checkport"}, call("check_port"))
entry({"admin", "services", "shadowsocksr", "log"}, form("shadowsocksr/log"), _("Log"), 80).leaf = true
entry({"admin", "services", "shadowsocksr", "run"}, call("act_status")).leaf = true
entry({"admin", "services", "shadowsocksr", "ping"}, call("act_ping")).leaf = true
entry({"admin", "services", "shadowsocksr", "run"}, call("act_status"))
entry({"admin", "services", "shadowsocksr", "ping"}, call("act_ping"))
entry({"admin", "services", "shadowsocksr", "reset"}, call("act_reset"))
entry({"admin", "services", "shadowsocksr", "restart"}, call("act_restart"))
entry({"admin", "services", "shadowsocksr", "delete"}, call("act_delete"))
entry({"admin", "services", "shadowsocksr", "cache"}, call("act_cache"))
end
function subscribe()
@ -64,14 +65,10 @@ function act_ping()
end
function check_status()
local retstring = "1"
local set = "/usr/bin/ssr-check www." .. luci.http.formvalue("set") .. ".com 80 3 1"
sret = luci.sys.call(set)
if sret == 0 then
retstring = "0"
end
local e = {}
e.ret = luci.sys.call("/usr/bin/ssr-check www." .. luci.http.formvalue("set") .. ".com 80 3 1")
luci.http.prepare_content("application/json")
luci.http.write_json({ret = retstring})
luci.http.write_json(e)
end
function refresh_data()
@ -82,7 +79,6 @@ function refresh_data()
end
function check_port()
local set = ""
local retstring = "<br /><br />"
local s
local server_name = ""
@ -127,3 +123,10 @@ function act_delete()
luci.sys.call("/etc/init.d/shadowsocksr restart &")
luci.http.redirect(luci.dispatcher.build_url("admin", "services", "shadowsocksr", "servers"))
end
function act_cache()
local e = {}
e.ret = luci.sys.call("/usr/bin/pdnsd-ctl -c /var/etc/ssrplus/pdnsd empty-cache >/dev/null")
luci.http.prepare_content("application/json")
luci.http.write_json(e)
end

View File

@ -150,6 +150,11 @@ if nixio.fs.access("/usr/bin/kcptun-client") then
end
end
if uci:get_first("shadowsocksr", 'global', 'pdnsd_enable', '0') == '1' then
s = m:field(DummyValue, "cache", translate("Reset pdnsd cache"))
s.template = "shadowsocksr/cache"
end
s = m:field(DummyValue, "google", translate("Google Connectivity"))
s.value = translate("No Check")
s.template = "shadowsocksr/check"

View File

@ -0,0 +1,29 @@
<%+cbi/valueheader%>
<script type="text/javascript">//<![CDATA[
function cache(btn,urlname)
{
btn.disabled = true;
btn.value = '<%:Perform reset%>';
murl=urlname;
XHR.get('<%=luci.dispatcher.build_url("admin", "services", "shadowsocksr","cache")%>',
{ set:murl },
function(x,rv)
{
var s = document.getElementById(urlname+'-status');
if (s)
{
if (rv.ret=="0")
s.innerHTML ="<font color='green'>"+"<%:Reset complete%>"+"</font>";
else
s.innerHTML ="<font color='red'>"+"<%:Reset Error%>"+"</font>";
}
btn.disabled = false;
btn.value = '<%:Perform reset%>';
}
);
return false;
}
//]]></script>
<input type="button" class="cbi-button cbi-button-reset" value="<%:Perform reset%>" onclick="return cache(this,'<%=self.option%>')" />
<span id="<%=self.option%>-status"><em><%=self.value%></em></span>
<%+cbi/valuefooter%>

View File

@ -1,6 +1,6 @@
<%+cbi/valueheader%>
<script type="text/javascript">//<![CDATA[
function subscribe(btn,dataname) {
function reset(btn,dataname) {
var s = document.getElementById(dataname + '-status');
var reset = prompt('<%:Really reset all changes?%><%:Please fill in reset%>',"")
if (reset == null || reset == "") {
@ -20,6 +20,6 @@
return false;
}
//]]></script>
<input type="button" class="cbi-button cbi-button-reset" value="<%:Perform reset%> " onclick="return subscribe(this,'<%=self.option%>')" />
<input type="button" class="cbi-button cbi-button-reset" value="<%:Perform reset%> " onclick="return reset(this,'<%=self.option%>')" />
<span id="<%=self.option%>-status"></span>
<%+cbi/valuefooter%>

View File

@ -220,8 +220,7 @@ function import_ssr_url(btn, urlname, sid) {
document.getElementsByName('cbid.shadowsocksr.' + sid + '.password')[0].value = password;
document.getElementsByName('cbid.shadowsocksr.' + sid + '.tls')[0].checked = true;
document.getElementsByName('cbid.shadowsocksr.' + sid + '.tls')[0].dispatchEvent(event);
document.getElementsByName('cbid.shadowsocksr.' + sid + '.tls_host')[0].value = queryParam.peer || '';
document.getElementsByName('cbid.shadowsocksr.' + sid + '.insecure')[0].checked = queryParam.allowInsecure == '1';
document.getElementsByName('cbid.shadowsocksr.' + sid + '.tls_host')[0].value = queryParam.sni || '';
if (param != undefined) {
document.getElementsByName('cbid.shadowsocksr.' + sid + '.alias')[0].value = decodeURI(param);
}

View File

@ -733,5 +733,11 @@ msgstr "输入的内容不正确!"
msgid "Reset complete"
msgstr "重置完成"
msgid "Reset Error"
msgstr "重置错误"
msgid "Reset pdnsd cache"
msgstr "重置pdnsd缓存"
msgid "Finger Print"
msgstr "指纹伪造"

View File

@ -37,7 +37,6 @@ server_count=0
redir_tcp=0
redir_udp=0
local_enable=0
ss_protocol=
kcp_enable_flag=0
pdnsd_enable_flag=0
switch_server=$1
@ -843,7 +842,7 @@ stop() {
ps -w | grep -v "grep" | grep ssr-monitor | awk '{print $1}' | xargs kill -9 >/dev/null 2>&1 &
ps -w | grep -v "grep" | grep "sleep 0000" | awk '{print $1}' | xargs kill -9 >/dev/null 2>&1 &
ps -w | grep -v "grep" | grep "$TMP_PATH" | awk '{print $1}' | xargs kill -9 >/dev/null 2>&1 &
killall -q -9 v2ray-plugin obfs-local
killall -q -9 v2ray-plugin obfs-local xray-plugin
rm -f /var/lock/ssr-monitor.lock
if [ -f "/var/dnsmasq.d/dnsmasq-ssrplus.conf" ]; then
rm -rf /var/dnsmasq.d/dnsmasq-ssrplus.conf $TMP_DNSMASQ_PATH $TMP_PATH/*-ssr-*.json

View File

@ -3639,7 +3639,6 @@
103.107.216.0/22
103.107.220.0/22
103.108.52.0/22
103.108.64.0/22
103.108.160.0/22
103.108.164.0/22
103.108.184.0/23
@ -3656,7 +3655,6 @@
103.109.88.0/22
103.109.106.0/23
103.109.248.0/22
103.110.32.0/22
103.110.80.0/23
103.110.92.0/22
103.110.100.0/22
@ -4139,6 +4137,13 @@
103.164.178.0/23
103.164.226.0/23
103.165.44.0/23
103.165.52.0/23
103.165.82.0/23
103.165.110.0/23
103.166.20.0/23
103.166.50.0/23
103.166.52.0/23
103.166.54.0/23
103.192.0.0/22
103.192.4.0/22
103.192.8.0/22
@ -5103,7 +5108,6 @@
103.248.168.0/22
103.248.192.0/22
103.248.212.0/22
103.248.220.0/22
103.248.224.0/22
103.249.8.0/22
103.249.12.0/22
@ -6753,7 +6757,6 @@
202.74.42.0/24
202.74.52.0/24
202.74.80.0/20
202.74.232.0/22
202.74.254.0/23
202.75.208.0/20
202.75.252.0/22

File diff suppressed because it is too large Load Diff

View File

@ -247,14 +247,9 @@ local function processData(szType, content)
local t = split(v, '=')
params[t[1]] = t[2]
end
if params.peer then
if params.sni then
-- 未指定peersni默认使用remote addr
result.tls_host = params.peer
end
if params.allowInsecure == "1" then
result.insecure = "1"
else
result.insecure = "0"
result.tls_host = params.sni
end
else
result.server_port = host[2]

View File

@ -9,7 +9,9 @@ entry({"admin", "vpn"}, firstchild(), "VPN", 45).dependent = false
local page
entry({"admin","vpn","ssrs"},cbi("ssrs"),_("SSR Python Server"),4).dependent=true
page = entry({"admin","vpn","ssrs"},cbi("ssrs"),_("SSR Python Server"),4)
page.dependent=true
page.acl_depends = { "luci-app-ssrserver-python" }
entry({"admin","vpn","ssrs","status"},call("act_status")).leaf=true
end

View File

@ -6,6 +6,7 @@ end
local e
e=entry({"admin","network","syncdial"},cbi("syncdial"),_("多线多拨"),103)
e.dependent=true
e.acl_depends = { "luci-app-syncdial" }
e=entry({"admin","network","macvlan_redial"},call("redial"),nil)
e.leaf=true
end

View File

@ -6,7 +6,10 @@ function index()
return
end
entry({"admin", "nas", "syncthing"}, cbi("syncthing"), _("Syncthing"), 10).dependent = true
local page = entry({"admin", "nas", "syncthing"}, cbi("syncthing"), _("Syncthing"))
page.order = 10
page.dependent = true
page.acl_depends = { "luci-app-syncthing" }
entry({"admin","nas","syncthing","status"},call("act_status")).leaf=true
end

View File

@ -4,8 +4,10 @@ function index()
if not nixio.fs.access("/etc/config/timecontrol") then return end
entry({"admin", "control"}, firstchild(), "Control", 44).dependent = false
entry({"admin", "control", "timecontrol"}, cbi("timecontrol"), _("Internet Time Control"), 10).dependent =
true
local page = entry({"admin", "control", "timecontrol"}, cbi("timecontrol"), _("Internet Time Control"))
page.order = 10
page.dependent = true
page.acl_depends = { "luci-app-timecontrol" }
entry({"admin", "control", "timecontrol", "status"}, call("status")).leaf = true
end

View File

@ -4,7 +4,10 @@ function index()
if not nixio.fs.access("/etc/config/timewol") then return end
entry({"admin", "control"}, firstchild(), "Control", 44).dependent = false
entry({"admin", "control", "timewol"}, cbi("timewol"), _("定时唤醒"), 95).dependent = true
local page = entry({"admin", "control", "timewol"}, cbi("timewol"), _("定时唤醒"))
page.order = 95
page.dependent = true
page.acl_depends = { "luci-app-timewol" }
entry({"admin", "control", "timewol", "status"}, call("status")).leaf = true
end

View File

@ -5,8 +5,11 @@ local http = require "luci.http"
function index()
if not nixio.fs.access("/etc/config/trojan_server") then return end
entry({"admin", "vpn"}, firstchild(), "VPN", 45).dependent = false
entry({"admin", "vpn", "trojan_server"}, cbi("trojan_server/index"),
_("Trojan Server"), 3).dependent = true
local page = entry({"admin", "vpn", "trojan_server"}, cbi("trojan_server/index"),
_("Trojan Server"))
page.order = 3
page.dependent = true
page.acl_depends = { "luci-app-trojan-server" }
entry({"admin", "vpn", "trojan_server", "config"},
cbi("trojan_server/config")).leaf = true

View File

@ -6,7 +6,9 @@ function index()
return
end
entry({"admin", "services", "unblockmusic"},firstchild(), _("Unblock Netease Music"), 50).dependent = false
local page = entry({"admin", "services", "unblockmusic"},firstchild(), _("Unblock Netease Music"), 50)
page.dependent = false
page.acl_depends = { "luci-app-unblockmusic" }
entry({"admin", "services", "unblockmusic", "general"},cbi("unblockmusic"), _("Base Setting"), 1)
entry({"admin", "services", "unblockmusic", "log"},form("unblockmusiclog"), _("Log"), 2)

View File

@ -26,4 +26,5 @@ function index()
local page
page = entry({"admin", "nas", "usb_printer"}, cbi("usb_printer"), _("USB Printer Server"), 50)
page.acl_depends = { "luci-app-usb-printer" }
end

View File

@ -5,8 +5,10 @@ local v2ray = require "luci.model.cbi.v2ray_server.api.v2ray"
function index()
if not nixio.fs.access("/etc/config/v2ray_server") then return end
entry({"admin", "vpn"}, firstchild(), "VPN", 45).dependent = false
entry({"admin", "vpn", "v2ray_server"}, cbi("v2ray_server/index"),
_("V2ray Server"), 3).dependent = true
local page = entry({"admin", "vpn", "v2ray_server"}, cbi("v2ray_server/index"),
_("V2ray Server"), 3)
page.dependent = true
page.acl_depends = { "luci-app-v2ray-server" }
entry({"admin", "vpn", "v2ray_server", "config"}, cbi("v2ray_server/config")).leaf =
true

View File

@ -5,7 +5,9 @@ function index()
return
end
entry({"admin", "nas", "verysync"}, cbi("verysync"), _("Verysync"), 10).dependent = true
local page = entry({"admin", "nas", "verysync"}, cbi("verysync"), _("Verysync"), 10)
page.dependent = true
page.acl_depends = { "luci-app-verysync" }
entry({"admin","nas","verysync","status"},call("act_status")).leaf=true
end

View File

@ -8,6 +8,7 @@ function index()
page = entry({"admin", "services", "vlmcsd"}, cbi("vlmcsd"), _("KMS Server"), 100)
page.i18n = "vlmcsd"
page.dependent = true
page.acl_depends = { "luci-app-vlmcsd" }
entry({"admin","services","vlmcsd","status"},call("act_status")).leaf=true
end

View File

@ -24,7 +24,7 @@ function index()
entry({"admin", "nas"}, firstchild(), "NAS", 44).dependent = false
entry({"admin", "nas", "vsftpd"},
alias("admin", "nas", "vsftpd", "general"),
_("FTP Server"))
_("FTP Server")).acl_depends = { "luci-app-vsftpd" }
entry({"admin", "nas", "vsftpd", "general"},
cbi("vsftpd/general"),

View File

@ -12,6 +12,6 @@ function index()
page = entry({"admin", "system", "webadmin"}, cbi("webadmin"), _("Web Admin"), 1)
page.leaf = true
page.acl_depends = { "luci-app-webadmin" }
end

View File

@ -4,7 +4,9 @@ function index()
if not nixio.fs.access("/etc/config/webrestriction") then return end
entry({"admin", "control"}, firstchild(), "Control", 44).dependent = false
entry({"admin", "control", "webrestriction"}, cbi("webrestriction"),_("访问限制"), 11).dependent = true
local page = entry({"admin", "control", "webrestriction"}, cbi("webrestriction"),_("访问限制"), 11)
page.dependent = true
page.acl_depends = { "luci-app-webrestriction" }
entry({"admin", "control", "webrestriction", "status"}, call("status")).leaf = true
end

View File

@ -4,7 +4,9 @@ function index()
if not nixio.fs.access("/etc/config/weburl") then return end
entry({"admin", "control"}, firstchild(), "Control", 44).dependent = false
entry({"admin", "control", "weburl"}, cbi("weburl"), _("网址过滤"), 12).dependent = true
local page = entry({"admin", "control", "weburl"}, cbi("weburl"), _("网址过滤"), 12)
page.dependent = true
page.acl_depends = { "luci-app-weburl" }
entry({"admin", "control", "weburl", "status"}, call("status")).leaf = true
end

View File

@ -7,7 +7,9 @@ end
entry({"admin","vpn"}, firstchild(), "VPN", 45).dependent = false
entry({"admin", "vpn", "zerotier"},firstchild(), _("ZeroTier")).dependent = false
local page = entry({"admin", "vpn", "zerotier"},firstchild(), _("ZeroTier"))
page.dependent = false
page.acl_depends = { "luci-app-zerotier" }
entry({"admin", "vpn", "zerotier", "general"},cbi("zerotier/settings"), _("Base Setting"), 1)
entry({"admin", "vpn", "zerotier", "log"},form("zerotier/info"), _("Interface Info"), 2)

View File

@ -2819,8 +2819,8 @@ input[type="checkbox"] {
padding: 0;
cursor: pointer;
transition: all 0.2s;
margin: 1rem 0 0 0;
margin-bottom: -3.5px;
margin: 0 auto;
margin-bottom: -3px;
}
input[type="checkbox"]:checked {
border: 1px solid #5e72e4;