diff --git a/package/ctcgfw/luci-app-unblockneteasemusic/Makefile b/package/ctcgfw/luci-app-unblockneteasemusic/Makefile
index 9d1c1fce71..d4604c4372 100644
--- a/package/ctcgfw/luci-app-unblockneteasemusic/Makefile
+++ b/package/ctcgfw/luci-app-unblockneteasemusic/Makefile
@@ -12,7 +12,7 @@ LUCI_DEPENDS:=+bash +busybox +coreutils-nohup +curl +dnsmasq-full +ipset +libope
LUCI_PKGARCH:=all
PKG_NAME:=luci-app-unblockneteasemusic
PKG_VERSION:=2.1
-PKG_RELEASE:=2
+PKG_RELEASE:=3
PKG_MAINTAINER:=[CTCGFW]Project-OpenWrt
diff --git a/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/controller/unblockneteasemusic.lua b/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/controller/unblockneteasemusic.lua
index 5e78e92b72..7740c448af 100644
--- a/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/controller/unblockneteasemusic.lua
+++ b/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/controller/unblockneteasemusic.lua
@@ -10,16 +10,47 @@ function index()
end
entry({"admin", "services", "unblockneteasemusic"},firstchild(), _("解除网易云音乐播放限制"), 50).dependent = false
-
- entry({"admin", "services", "unblockneteasemusic", "general"},cbi("unblockneteasemusic"), _("Base Setting"), 1)
- entry({"admin", "services", "unblockneteasemusic", "log"},form("unblockneteasemusiclog"), _("Log"), 2)
-
+
+ entry({"admin", "services", "unblockneteasemusic", "general"},cbi("unblockneteasemusic"), _("基本设定"), 1)
+ entry({"admin", "services", "unblockneteasemusic", "updt_core"},form("unblockneteasemusic_upcore"), _("更新核心"), 2).leaf = true
+ entry({"admin", "services", "unblockneteasemusic", "log"},form("unblockneteasemusiclog"), _("日志"), 3)
+
entry({"admin", "services", "unblockneteasemusic", "status"},call("act_status")).leaf=true
+ entry({"admin", "services", "unblockneteasemusic", "update_core"},call("act_update_core"))
end
function act_status()
- local e={}
- e.running=luci.sys.call("ps |grep unblockneteasemusic |grep app.js |grep -v grep >/dev/null")==0
- luci.http.prepare_content("application/json")
- luci.http.write_json(e)
+ local e={}
+ e.running=luci.sys.call("ps |grep unblockneteasemusic |grep app.js |grep -v grep >/dev/null")==0
+ luci.http.prepare_content("application/json")
+ luci.http.write_json(e)
end
+
+function update_core()
+ cloud_ver=luci.sys.exec("curl -s 'https://github.com/nondanee/UnblockNeteaseMusic/commits/master' |tr -d '\n' |grep -Eo 'commit\/[0-9a-z]+' |sed -n 1p |sed 's#commit/##g'")
+ cloud_ver_mini=luci.sys.exec("curl -s 'https://github.com/nondanee/UnblockNeteaseMusic/commits/master' |tr -d '\n' |grep -Eo 'BtnGroup-item.> [0-9a-z]+' |sed -n 1p |sed 's#BtnGroup-item.> ##g'")
+ if not cloud_ver or not cloud_ver_mini then
+ return "1"
+ else
+ local_ver=luci.sys.exec("cat '/usr/share/unblockneteasemusic/local_ver'")
+ if not local_ver or (local_ver ~= cloud_ver) then
+ luci.sys.call("rm -f /usr/share/unblockneteasemusic/update_successfully")
+ luci.sys.call("/bin/bash /usr/share/unblockneteasemusic/update_core.sh luci_update")
+ if not nixio.fs.access("/usr/share/unblockneteasemusic/update_successfully") then
+ return "2"
+ else
+ luci.sys.call("rm -f /usr/share/unblockneteasemusic/update_successfully")
+ return cloud_ver_mini
+ end
+ else
+ return "0"
+ end
+ end
+end
+
+function act_update_core()
+ luci.http.prepare_content("application/json")
+ luci.http.write_json({
+ ret = update_core();
+ })
+end
\ No newline at end of file
diff --git a/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/model/cbi/unblockneteasemusic.lua b/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/model/cbi/unblockneteasemusic.lua
index d5f1d90e5e..49fa40bd99 100644
--- a/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/model/cbi/unblockneteasemusic.lua
+++ b/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/model/cbi/unblockneteasemusic.lua
@@ -1,7 +1,7 @@
mp = Map("unblockneteasemusic", translate("解除网易云音乐播放限制"))
mp.description = translate("原理:采用 [QQ/虾米/百度/酷狗/酷我/咕咪/JOOX] 等音源,替换网易云音乐 无版权/收费 歌曲链接
具体使用方法参见:https://github.com/project-openwrt/luci-app-unblockneteasemusic")
-mp:section(SimpleSection).template = "unblockneteasemusic/unblockneteasemusic_status"
+mp:section(SimpleSection).template = "unblockneteasemusic/unblockneteasemusic_status"
s = mp:section(TypedSection, "unblockneteasemusic")
s.anonymous=true
@@ -12,15 +12,6 @@ enabled.description = translate("启用本插件以解除网易云音乐播放
enabled.default = 0
enabled.rmempty = false
-button_update_core = s:option (Button, "_button_update_core", translate("更新主程序"))
-button_update_core.description = translate("更新完毕后会自动重启插件;更新主程序需要一点时间,请不要反复点击按钮")
-local latest_ver = luci.sys.exec("/bin/bash /usr/share/unblockneteasemusic/check_update.sh")
-button_update_core.inputtitle = translate (latest_ver)
-button_update_core.inputstyle = "apply"
-function button_update_core.write (self, section, value)
- luci.sys.call ("/bin/bash /usr/share/unblockneteasemusic/update_core.sh &")
-end
-
account = s:option(Value, "http_port", translate("[HTTP] 监听端口"))
account.description = translate("本插件监听的HTTP端口,不可与其他程序/HTTPS共用一个端口")
account.placeholder = "5200"
diff --git a/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/model/cbi/unblockneteasemusic_upcore.lua b/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/model/cbi/unblockneteasemusic_upcore.lua
new file mode 100644
index 0000000000..d811fc7b29
--- /dev/null
+++ b/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/model/cbi/unblockneteasemusic_upcore.lua
@@ -0,0 +1,13 @@
+local m, up_core
+
+m = SimpleForm("Version")
+m.reset = false
+m.submit = false
+
+up_core=m:field(DummyValue,"update_core",translate("更新主程序"))
+up_core.rawhtml = true
+up_core.template = "unblockneteasemusic/update_core"
+up_core.value = translate("未检查")
+up_core.description = "更新完毕后会自动在后台重启插件,无需手动重启"
+
+return m
diff --git a/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/view/unblockneteasemusic/update_core.htm b/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/view/unblockneteasemusic/update_core.htm
new file mode 100644
index 0000000000..1e9fecd14b
--- /dev/null
+++ b/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/view/unblockneteasemusic/update_core.htm
@@ -0,0 +1,36 @@
+<%+cbi/valueheader%>
+
+
+
+
+
+<%=self.value%>
+
+<%+cbi/valuefooter%>
\ No newline at end of file
diff --git a/package/ctcgfw/luci-app-unblockneteasemusic/root/usr/share/unblockneteasemusic/check_update.sh b/package/ctcgfw/luci-app-unblockneteasemusic/root/usr/share/unblockneteasemusic/check_update.sh
deleted file mode 100755
index b31f3e646c..0000000000
--- a/package/ctcgfw/luci-app-unblockneteasemusic/root/usr/share/unblockneteasemusic/check_update.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/bash
-# Created By [CTCGFW]Project OpenWRT
-# https://github.com/project-openwrt
-
-commit_info="$(curl -s https://github.com/nondanee/UnblockNeteaseMusic/commits/master)"
-latest_ver="$(echo -e "${commit_info}" |tr -d '\n' | grep -Eo 'commit\/[0-9a-z]+' |sed -n 1p |sed 's#commit/##g')"
-latest_ver_mini="$(echo -e "${commit_info}" |tr -d '\n' | grep -Eo 'BtnGroup-item"> [0-9a-z]+' |sed -n 1p |sed 's#BtnGroup-item"> ##g')"
-
-[ -z "${commit_info}" ] && echo "无法检测最新版本,请稍后重试" && exit 1
-[ -z "${latest_ver}" ] && echo "无法检测最新版本,请稍后重试" && exit 1
-[ -z "${latest_ver_mini}" ] && echo "无法检测最新版本,请稍后重试" && exit 1
-
-if [ ! -e "/usr/share/unblockneteasemusic/local_ver" ]; then
- echo "最新版本:${latest_ver_mini},点此更新"
-else
- if [ "$(cat /usr/share/unblockneteasemusic/local_ver)" != "${latest_ver}" ]; then
- echo "最新版本:${latest_ver_mini},点此更新"
- else
- echo "目前已是最新版本,无需更新"
- fi
-fi
diff --git a/package/ctcgfw/luci-app-unblockneteasemusic/root/usr/share/unblockneteasemusic/update_core.sh b/package/ctcgfw/luci-app-unblockneteasemusic/root/usr/share/unblockneteasemusic/update_core.sh
index 9e8aab9a71..4f8d69e35b 100755
--- a/package/ctcgfw/luci-app-unblockneteasemusic/root/usr/share/unblockneteasemusic/update_core.sh
+++ b/package/ctcgfw/luci-app-unblockneteasemusic/root/usr/share/unblockneteasemusic/update_core.sh
@@ -50,6 +50,7 @@ function update_core(){
echo -e "Failed to download core." >>/tmp/unblockneteasemusic.log
exit 1
else
+ [ "${luci_update}" == "y" ] && touch "/usr/share/unblockneteasemusic/update_successfully"
echo -e "${latest_ver}" > /usr/share/unblockneteasemusic/local_ver
/etc/init.d/unblockneteasemusic restart
fi
@@ -64,4 +65,5 @@ function main(){
check_latest_version
}
-main
+ [ "$1" == "luci_update" ] && luci_update="y"
+ main
\ No newline at end of file