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

Fix backup to server page if multiple servers

This commit is contained in:
Ycarus (Yannick Chabanois) 2019-11-14 21:21:49 +01:00
parent 85eef04377
commit 23b88f7a5b
3 changed files with 19 additions and 8 deletions

View file

@ -17,10 +17,10 @@ function index()
entry({"admin", "system", "openmptcprouter", "status"}, template("openmptcprouter/wanstatus"), _("Status"), 2).leaf = true
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
entry({"admin", "system", "openmptcprouter", "settings_add"}, post("settings_add"))
entry({"admin", "system", "openmptcprouter", "update_vps"}, post("update_vps"))
entry({"admin", "system", "openmptcprouter", "backup"}, template("openmptcprouter/backup"), _("Backup on server"), 3).leaf = true
entry({"admin", "system", "openmptcprouter", "backupgr"}, post("backupgr")).leaf = true
entry({"admin", "system", "openmptcprouter", "backupgr"}, post("backupgr"))
entry({"admin", "system", "openmptcprouter", "debug"}, template("openmptcprouter/debug"), _("Show all settings"), 5).leaf = true
end

View file

@ -7,6 +7,7 @@ luci.sys.call("/etc/init.d/openmptcprouter-vps backup_list >/dev/null 2>/dev/nul
<div class="cbi-map">
<h2 name="content"><%:Backup on server%></h2>
<fieldset class="cbi-section" id="networks">
<input type="hidden" name="token" value="<%=token%>" />
<%
uci:foreach("openmptcprouter","server", function(s)
servername = s[".name"]
@ -18,19 +19,17 @@ luci.sys.call("/etc/init.d/openmptcprouter-vps backup_list >/dev/null 2>/dev/nul
<div class="cbi-section-node">
<%:Last available backup on server:%> <%=os.date('%d-%b-%Y', luci.model.uci.cursor():get("openmptcprouter",servername,"lastbackup"))%>
</div>
<input type="hidden" name="token" value="<%=token%>" />
<input type="submit" class="cbi-button cbi-button-action important" name="restore" value="<%:Restore backup%>"/>
<input type="submit" class="cbi-button cbi-button-action important" name="save" value="<%:Send backup%>"/>
<% else %>
<div class="cbi-section-node">
<%:No available backup on server.%>
</div>
<input type="hidden" name="token" value="<%=token%>" />
<input type="submit" class="cbi-button cbi-button-action important" name="save" value="<%:Send backup%>"/>
<% end %>
<%
end)
%>
<input type="submit" class="cbi-button cbi-button-action important" name="restore" value="<%:Restore backup%>"/>
<input type="submit" class="cbi-button cbi-button-action important" name="save" value="<%:Send backup%>"/>
</fieldset>
</div>
</form>

View file

@ -858,6 +858,14 @@ _backup_get() {
[ -z "$(uci -q get openmptcprouter.${servername}.username)" ] && return
[ -z "$(uci -q get openmptcprouter.${servername}.password)" ] && return
[ -z "$(uci -q get openmptcprouter.${servername}.port)" ] && return
[ -z "$lastbackup" ] || [ "$lastbackup" -lt "$(uci -q get openmptcprouter.$servername.lastbackup)" ] && {
lastbackup="$(uci -q get openmptcprouter.$servername.lastbackup)"
serverbackup="$servername"
}
}
_backup_get_and_apply() {
servername=$1
token=""
vps_config=""
_login
@ -879,8 +887,11 @@ _backup_get() {
}
backup_get() {
lastbackup=""
serverbackup=""
config_load openmptcprouter
config_foreach _backup_get server
[ -n "$serverbackup" ] && _backup_get_and_apply $serverbackup
}
_backup_list() {
@ -911,6 +922,7 @@ _backup_list() {
backup_list() {
config_load openmptcprouter
config_foreach _backup_list server
uci -q commit openmptcprouter
}