From bdcb760d6214cb9011f4a6fa20a56fa959bc696f Mon Sep 17 00:00:00 2001 From: Stan Grishin Date: Fri, 3 Apr 2020 12:50:10 +0000 Subject: [PATCH] luci-app-https-dns-proxy: better service control & buttons styling Signed-off-by: Stan Grishin --- .../luci-app-https-dns-proxy/Makefile | 2 +- .../luasrc/model/cbi/https-dns-proxy.lua | 3 + .../luasrc/view/https-dns-proxy/buttons.htm | 83 ++++++++++++------- .../po/templates/https-dns-proxy.pot | 44 +++++----- .../etc/uci-defaults/40_luci-https-dns-proxy | 3 + 5 files changed, 83 insertions(+), 52 deletions(-) create mode 100644 applications/luci-app-https-dns-proxy/root/etc/uci-defaults/40_luci-https-dns-proxy diff --git a/applications/luci-app-https-dns-proxy/Makefile b/applications/luci-app-https-dns-proxy/Makefile index 47e897191..3f93d6a5c 100644 --- a/applications/luci-app-https-dns-proxy/Makefile +++ b/applications/luci-app-https-dns-proxy/Makefile @@ -10,7 +10,7 @@ LUCI_TITLE:=DNS Over HTTPS Proxy Web UI LUCI_DESCRIPTION:=Provides Web UI for DNS Over HTTPS Proxy LUCI_DEPENDS:=+luci-compat +luci-mod-admin-full +https-dns-proxy LUCI_PKGARCH:=all -PKG_RELEASE:=1 +PKG_RELEASE:=2 include ../../luci.mk diff --git a/applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua b/applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua index 11eca6039..405eb2a84 100644 --- a/applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua +++ b/applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua @@ -35,6 +35,9 @@ else if not ubusStatus or not ubusStatus[packageName] then tmpfsStatusCode = 0 tmpfsStatus = translate("Stopped") + if not luci.sys.init.enabled(packageName) then + tmpfsStatus = tmpfsStatus .. " (" .. translate("disabled") .. ")" + end else tmpfsStatusCode, tmpfsStatus = 1, "" for n = 1,1000 do diff --git a/applications/luci-app-https-dns-proxy/luasrc/view/https-dns-proxy/buttons.htm b/applications/luci-app-https-dns-proxy/luasrc/view/https-dns-proxy/buttons.htm index 52d2b50e5..b7fcd472e 100644 --- a/applications/luci-app-https-dns-proxy/luasrc/view/https-dns-proxy/buttons.htm +++ b/applications/luci-app-https-dns-proxy/luasrc/view/https-dns-proxy/buttons.htm @@ -1,56 +1,77 @@ -<%# - Copyright 2019 Stan Grishin --%> +<%# Copyright 2020 Stan Grishin -%> + +<%+https-dns-proxy/css%> +<%+https-dns-proxy/js%> <%- local packageName = "https-dns-proxy" - local enabledFlag = luci.sys.init.enabled(packageName) - local ubusStatus = luci.util.ubus("service", "list", { name = packageName }) + local serviceRunning, serviceEnabled = false, false; - if not ubusStatus or not ubusStatus[packageName] then - tmpfsStatusCode = 0 - else - tmpfsStatusCode = 1 + serviceEnabled = luci.sys.init.enabled(packageName) + local ubusStatus = luci.util.ubus("service", "list", { name = packageName }) + if ubusStatus and ubusStatus[packageName] then + serviceRunning = true end - if tmpfsStatusCode == 0 then - btn_start_style = "cbi-button cbi-button-apply important" - btn_action_style = "cbi-button cbi-button-apply important" - btn_stop_style = "cbi-button cbi-button-reset -disabled" + if serviceEnabled then + btn_start_status = true + btn_action_status = true + btn_stop_status = true + btn_enable_status = false + btn_disable_status = true else - btn_start_style = "cbi-button cbi-button-apply -disabled" - btn_action_style = "cbi-button cbi-button-apply important" - btn_stop_style = "cbi-button cbi-button-reset important" + btn_start_status = false + btn_action_status = false + btn_stop_status = false + btn_enable_status = true + btn_disable_status = false end - if not enabledFlag then - btn_start_style = "cbi-button cbi-button-apply -disabled" - btn_action_style = "cbi-button cbi-button-apply -disabled" - btn_enable_style = "cbi-button cbi-button-apply important" - btn_disable_style = "cbi-button cbi-button-reset -disabled" + if serviceRunning then + btn_start_status = false + btn_action_status = true + btn_stop_status = true else - btn_enable_style = "cbi-button cbi-button-apply -disabled" - btn_disable_style = "cbi-button cbi-button-reset important" + btn_action_status = false + btn_stop_status = false end -%> -<%+https-dns-proxy/css%> -<%+https-dns-proxy/js%> -
- + - + - +         - + - +
+ +<%-if not btn_start_status then%> + +<%-end%> +<%-if not btn_action_status then%> + +<%-end%> +<%-if not btn_stop_status then%> + +<%-end%> +<%-if not btn_enable_status then%> + +<%-end%> +<%-if not btn_disable_status then%> + +<%-end%> diff --git a/applications/luci-app-https-dns-proxy/po/templates/https-dns-proxy.pot b/applications/luci-app-https-dns-proxy/po/templates/https-dns-proxy.pot index 3e1ddb2a3..78352cc7a 100644 --- a/applications/luci-app-https-dns-proxy/po/templates/https-dns-proxy.pot +++ b/applications/luci-app-https-dns-proxy/po/templates/https-dns-proxy.pot @@ -25,7 +25,7 @@ msgstr "" msgid "Cloudflare" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:85 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:88 msgid "DHCP and DNS" msgstr "" @@ -33,7 +33,7 @@ msgstr "" msgid "DNS Over HTTPS Proxy" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:64 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:67 msgid "DNS Over HTTPS Proxy Settings" msgstr "" @@ -45,23 +45,23 @@ msgstr "" msgid "Digitale Gesellschaft" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/view/https-dns-proxy/buttons.htm:53 +#: applications/luci-app-https-dns-proxy/luasrc/view/https-dns-proxy/buttons.htm:57 msgid "Disable" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:56 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:59 msgid "DoH" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:143 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:146 msgid "EDNS client subnet" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/view/https-dns-proxy/buttons.htm:51 +#: applications/luci-app-https-dns-proxy/luasrc/view/https-dns-proxy/buttons.htm:54 msgid "Enable" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:87 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:90 msgid "For more information on different options check" msgstr "" @@ -69,15 +69,15 @@ msgstr "" msgid "Google" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:83 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:86 msgid "Instances" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:126 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:129 msgid "Listen address" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:139 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:142 msgid "Listen port" msgstr "" @@ -89,7 +89,7 @@ msgstr "" msgid "ODVR (nic.cz)" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:146 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:149 msgid "Proxy server" msgstr "" @@ -109,20 +109,20 @@ msgstr "" msgid "Quad 9 (Unsecured)" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/view/https-dns-proxy/buttons.htm:43 +#: applications/luci-app-https-dns-proxy/luasrc/view/https-dns-proxy/buttons.htm:44 msgid "Reload" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:99 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:102 msgid "Resolver" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:56 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:59 msgid "Running" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:66 -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:68 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:69 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:71 msgid "Service Status" msgstr "" @@ -130,7 +130,7 @@ msgstr "" msgid "Start" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/view/https-dns-proxy/buttons.htm:45 +#: applications/luci-app-https-dns-proxy/luasrc/view/https-dns-proxy/buttons.htm:47 msgid "Stop" msgstr "" @@ -142,20 +142,24 @@ msgstr "" msgid "Unknown Provider" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:83 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:86 msgid "" "When you add/remove any instances below, they will be used to override the " "'DNS forwardings' section of" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:91 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:94 msgid "and" msgstr "" -#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:56 +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:59 msgid "at" msgstr "" +#: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:39 +msgid "disabled" +msgstr "" + #: applications/luci-app-https-dns-proxy/luasrc/model/cbi/https-dns-proxy.lua:32 msgid "is not installed or not found" msgstr "" diff --git a/applications/luci-app-https-dns-proxy/root/etc/uci-defaults/40_luci-https-dns-proxy b/applications/luci-app-https-dns-proxy/root/etc/uci-defaults/40_luci-https-dns-proxy new file mode 100644 index 000000000..a1ecfcea2 --- /dev/null +++ b/applications/luci-app-https-dns-proxy/root/etc/uci-defaults/40_luci-https-dns-proxy @@ -0,0 +1,3 @@ +#!/bin/sh +rm -rf /var/luci-modulecache/; rm -f /var/luci-indexcache; +exit 0 -- 2.25.1