1
0
Fork 0
mirror of https://github.com/Ysurac/openmptcprouter-feeds.git synced 2025-03-09 15:40:03 +00:00

Allow VPS update from OMR advanced settings

This commit is contained in:
Ycarus 2018-12-06 13:50:56 +01:00
parent 9fbfd863b3
commit 9ea04c5c1e
3 changed files with 45 additions and 0 deletions

View file

@ -17,6 +17,7 @@ function index()
entry({"admin", "system", "openmptcprouter", "interfaces_status"}, call("interfaces_status")).leaf = true
entry({"admin", "system", "openmptcprouter", "settings"}, template("openmptcprouter/settings"), _("Advanced Settings"), 3).leaf = true
entry({"admin", "system", "openmptcprouter", "settings_add"}, post("settings_add")).leaf = true
entry({"admin", "system", "openmptcprouter", "update_vps"}, post("update_vps")).leaf = true
end
function interface_from_device(dev)
@ -448,6 +449,20 @@ function settings_add()
return
end
function update_vps()
-- Update VPS
local update_vps = luci.http.formvalue("flash") or ""
if update_vps ~= "" then
local token = uci:get("openmptcprouter","vps","token") or ""
if token ~= "" then
sys.exec('curl -4 --max-time 20 -s -k -H "Authorization: Bearer ' .. token .. '" https://' .. mArray.openmptcprouter["service_addr"] .. ":65500/update")
luci.sys.call("/etc/init.d/openmptcprouter-vps restart >/dev/null 2>/dev/null")
luci.http.redirect(luci.dispatcher.build_url("admin/system/openmptcprouter/status"))
return
end
end
end
function get_ip(interface)
local dump = require("luci.util").ubus("network.interface.%s" % interface, "status", {})
local ip = ""
@ -589,6 +604,7 @@ function interfaces_status()
if vpsinfo.vps ~= nil then
mArray.openmptcprouter["vps_loadavg"] = vpsinfo.vps.loadavg or ""
mArray.openmptcprouter["vps_uptime"] = vpsinfo.vps.uptime or ""
mArray.openmptcprouter["vps_mptcp"] = vpsinfo.vps.mptcp or ""
end
end
end

View file

@ -1,6 +1,31 @@
<%+header%>
<% if stderr and #stderr > 0 then %><pre class="error"><%=pcdata(stderr)%></pre><% end %>
<%
local omr_version=luci.model.uci.cursor():get("openmptcprouter","vps","omr_version")
local latest_omr_version=luci.model.uci.cursor():get("openmptcprouter","latest_versions","vps")
if omr_version ~= "" and latest_omr_version ~= "" and omr_version ~= latest_omr_version then
%>
<form class="inline" method="post" action="<%=url('admin/system/openmptcprouter/update_vps')%>">
<div class="cbi-map">
<h2 name="content"><%:Update VPSs%></h2>
<fieldset class="cbi-section" id="update">
<div class="cbi-section-descr"><%:Update remotly OpenMPTCProuter server to latest version when needed.%> <b><%:Beta%></b></div>
<div class="cbi-value">
<label class="cbi-value-title"><%:Update OpenMPTCProuter server%></label>
<div class="cbi-value-field">
<input type="hidden" name="token" value="<%=token%>" />
<input type="hidden" name="flash" value="1" />
<input type="submit" name="update_vps" class="cbi-button cbi-button-apply" value="<%:Update%>">
</div>
</div>
</div>
</form>
<%
end
%>
<form class="inline" method="post" action="<%=url('admin/system/openmptcprouter/settings_add')%>">
<div class="cbi-map">
<h2 name="content"><%:Advanced Settings%></h2>

View file

@ -211,6 +211,10 @@
} else if (mArray.openmptcprouter.socks_service_enabled == true && mArray.openmptcprouter.ss_addr == "")
{
statusMessage += 'Can\'t get public IP address from ShadowSocks<br/>';
}
if (mArray.openmptcprouter.vps_mptcp == "0")
{
statusMessage += 'MPTCP is not enabled on the server<br/>';
}
if (statusMessage !== "")
{