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

Merge pull request #3 from Ysurac/develop

同步
This commit is contained in:
suyuan 2020-10-08 10:35:06 +08:00 committed by GitHub
commit 58af8ae385
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
58 changed files with 5932 additions and 1424 deletions

View file

@ -1,4 +1,4 @@
name: Build OpenMPTCProuter
name: openmptcprouter
on: [push]
env:
@ -9,7 +9,7 @@ jobs:
build:
strategy:
matrix:
OMR_TARGET: [bpi-r2, rpi2, rpi4, wrt32x, espressobin, r2s, rpi3, wrt3200acm, x86, x86_64]
OMR_TARGET: [bpi-r2, bpi-r64, rpi2, rpi4, wrt32x, espressobin, r2s, rpi3, wrt3200acm, x86, x86_64]
runs-on: ubuntu-latest
continue-on-error: true

View file

@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/angt/glorytun.git
PKG_SOURCE_VERSION:=3622f928caf03709c4031a34feec85c623bc5281
PKG_SOURCE_VERSION:=97607fdf5c6c33df512ed85190a1fd93b5f45e77
PKG_NAME:=glorytun-udp
PKG_VERSION:=0.3.4-$(PKG_SOURCE_VERSION)
PKG_RELEASE:=23

View file

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-08-14 08:04+0000\n"
"Last-Translator: Andreas Dorfer <adorferen@gmail.com>\n"
"PO-Revision-Date: 2020-10-05 12:39+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: German <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsdsvpn/de/>\n"
"Language: de\n"
@ -19,11 +19,11 @@ msgstr "DSVPN"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:12
msgid "Enable"
msgstr "anschalten"
msgstr "Aktivieren"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:39
msgid "Interface name"
msgstr "Anschluss-Bezeichnung"
msgstr "Name der Verbindung"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:26
msgid "Key"

View file

@ -1,27 +1,28 @@
msgid ""
msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.2.3\n"
"Last-Translator: Ycarus <ycarus@zugaina.org>\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"PO-Revision-Date: 2020-09-30 08:50+0000\n"
"Last-Translator: Anonymous <noreply@weblate.org>\n"
"Language-Team: French <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsdsvpn/fr/>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.0.4\n"
#: luci-app-dsvpn/luasrc/controller/dsvpn.lua:4
#: luci-app-dsvpn/luasrc/controller/dsvpn.lua:5
#: luci-app-dsvpn/luasrc/controller/dsvpn.lua:6
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:6
msgid "DSVPN"
msgstr ""
msgstr "DSVPN"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:12
msgid "Enable"
msgstr "Activé"
msgstr "Activer"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:39
msgid "Interface name"
@ -29,7 +30,7 @@ msgstr "Nom de l'interface"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:26
msgid "Key"
msgstr "Clef"
msgstr "Clé"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:15
msgid "Remote host"

View file

@ -0,0 +1,50 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-09-21 12:51+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: Italian <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsdsvpn/it/>\n"
"Language: it\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.0.4\n"
#: luci-app-dsvpn/luasrc/controller/dsvpn.lua:4
#: luci-app-dsvpn/luasrc/controller/dsvpn.lua:5
#: luci-app-dsvpn/luasrc/controller/dsvpn.lua:6
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:6
msgid "DSVPN"
msgstr "DSVPN"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:12
msgid "Enable"
msgstr "Attivare"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:39
msgid "Interface name"
msgstr "Nome interfaccia"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:26
msgid "Key"
msgstr "Key"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:15
msgid "Remote host"
msgstr "Rimuovi server"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:21
msgid "Remote port"
msgstr "Porta remota"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:8
msgid "Settings"
msgstr "Impostazioni"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:31
msgid "Tunnel local IP"
msgstr "IP locale del tunnel"
#: luci-app-dsvpn/luasrc/model/cbi/dsvpn.lua:35
msgid "Tunnel remote IP"
msgstr "IP remoto del tunnel"

View file

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-08-14 08:04+0000\n"
"Last-Translator: Andreas Dorfer <adorferen@gmail.com>\n"
"PO-Revision-Date: 2020-10-05 12:39+0000\n"
"Last-Translator: Anonymous <noreply@weblate.org>\n"
"Language-Team: German <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsglorytun/de/>\n"
"Language: de\n"
@ -11,11 +11,13 @@ msgstr ""
"X-Generator: Weblate 4.0.4\n"
msgid "Add"
msgstr "hinzufügen"
msgstr "Hinzufügen"
msgid ""
"Below is a list of configured Glorytun instances and their current state"
msgstr "Liste der konfigurierten Glorytun-Instanzen und ihr aktueller Status"
msgstr ""
"Nachfolgend eine Liste der konfigurierten Glorytun-Instanzen und ihre "
"aktuelle Status."
msgid "Bind address"
msgstr "Bindungsadresse"
@ -27,28 +29,28 @@ msgid "Bind port"
msgstr "Verbindungs-Port"
msgid "Enable"
msgstr "anschalten"
msgstr "Aktivieren"
msgid "Enabled"
msgstr "aktiv"
msgstr "Aktiv"
msgid "Glorytun"
msgstr "Glorytun"
msgid "Glorytun instances"
msgstr "Glorytun-Instanz"
msgstr "Glorytun-Instanzen"
msgid "Instance \"%s\""
msgstr "Instanz '%s'"
msgid "Interface"
msgstr "Anschluss"
msgstr "Schnittstelle"
msgid "Interface name"
msgstr "Anschluss-Bezeichnung"
msgstr "Name der Verbindung"
msgid "Invalid"
msgstr "ungültig"
msgstr "Ungültig"
msgid "Local tunnel ip address"
msgstr "IP-Adresse des lokalen Tunnels"

View file

@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: 2020-08-03 12:39+0000\n"
"PO-Revision-Date: 2020-10-02 08:44+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: French <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsglorytun/fr/>\n"
@ -20,7 +20,7 @@ msgid "Below is a list of configured Glorytun instances and their current state"
msgstr "Ci-dessous une liste des instances Glorytun configurées et leur état actuel"
msgid "Bind address"
msgstr ""
msgstr "Adresse mappée"
msgid "Bind backup"
msgstr ""
@ -29,10 +29,10 @@ msgid "Bind port"
msgstr "Port de connexion"
msgid "Enable"
msgstr "Active"
msgstr "Activer"
msgid "Enabled"
msgstr "Activé"
msgstr "Activer"
msgid "Glorytun"
msgstr "Glorytun"
@ -62,7 +62,7 @@ msgid "MTU"
msgstr "MTU"
msgid "MTU auto"
msgstr ""
msgstr "MTU auto"
msgid "Overview"
msgstr "Aperçu"

View file

@ -0,0 +1,104 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-09-21 12:51+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: Italian <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsglorytun/it/>\n"
"Language: it\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.0.4\n"
msgid "Add"
msgstr "Aggiungi"
msgid ""
"Below is a list of configured Glorytun instances and their current state"
msgstr ""
"Di seguito è riportato un elenco di istanze Glorytun configurate e il loro "
"stato corrente"
msgid "Bind address"
msgstr "Associa indirizzo"
msgid "Bind backup"
msgstr "Bind backup"
msgid "Bind port"
msgstr "Bind port"
msgid "Enable"
msgstr "Attivare"
msgid "Enabled"
msgstr "Abilitato"
msgid "Glorytun"
msgstr "Glorytun"
msgid "Glorytun instances"
msgstr "Istanze di Glorytun"
msgid "Instance \"%s\""
msgstr "Istanza \"%s\""
msgid "Interface"
msgstr "Interfaccia"
msgid "Interface name"
msgstr "Nome interfaccia"
msgid "Invalid"
msgstr "Non valido"
msgid "Local tunnel ip address"
msgstr "Indirizzo IP del tunnel locale"
msgid "MPTCP"
msgstr "MPTCP"
msgid "MTU"
msgstr "MTU"
msgid "MTU auto"
msgstr "MTU auto"
msgid "Overview"
msgstr "Panoramica"
msgid "Port"
msgstr "Porta"
msgid "Protocol"
msgstr "Protocollo"
msgid "Remote host name or ip address"
msgstr "Nome host remoto o indirizzo IP"
msgid "Remote tunnel ip address"
msgstr "Indirizzo IP del tunnel remoto"
msgid "Server mode"
msgstr "Modalità server"
msgid "Start/Stop"
msgstr "Marcia/arresto"
msgid "Started"
msgstr "Iniziato"
msgid "TCP port # for both local and remote"
msgstr "Porta TCP # sia per locale che per remoto"
msgid "The secret key"
msgstr "Chiave segreta"
msgid "Use ChaCha20 stream cipher"
msgstr "Usa il cifrario a flusso ChaCha20"
msgid "no"
msgstr "no"
msgid "yes (%i)"
msgstr "Sì (%i)"

View file

@ -2,15 +2,16 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: Ycarus <ycarus@zugaina.org>\n"
"Language-Team: \n"
"PO-Revision-Date: 2020-09-30 08:50+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: French <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsiperf/fr/>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.2.3\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.0.4\n"
#: luci-app-iperf/luasrc/view/iperf/test.htm:128
msgid "0 for unlimited. Need to be limited for UDP test"
@ -87,7 +88,7 @@ msgstr "En attente de la réponse de la commande..."
#: luci-app-iperf/luasrc/controller/iperf.lua:8
msgid "iPerf"
msgstr ""
msgstr "iPerf"
#: luci-app-iperf/luasrc/view/iperf/test.htm:99
msgid "iPerf speed tests"
@ -95,4 +96,4 @@ msgstr "Tests de vitesse iPerf"
#: luci-app-iperf/luasrc/controller/iperf.lua:7
msgid "iperf"
msgstr ""
msgstr "iperf"

View file

@ -0,0 +1,96 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-09-21 12:51+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: Italian <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsiperf/it/>\n"
"Language: it\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.0.4\n"
#: luci-app-iperf/luasrc/view/iperf/test.htm:128
msgid "0 for unlimited. Need to be limited for UDP test"
msgstr "0 per illimitato. Deve essere limitato per il test UDP"
#: luci-app-iperf/luasrc/view/iperf/test.htm:48
#: luci-app-iperf/luasrc/view/iperf/test.htm:88
msgid "Bad address specified!"
msgstr "È stato specificato un indirizzo errato!"
#: luci-app-iperf/luasrc/view/iperf/test.htm:66
#: luci-app-iperf/luasrc/view/iperf/test.htm:78
#: luci-app-iperf/luasrc/view/iperf/test.htm:83
#: luci-app-iperf/luasrc/view/iperf/test.htm:88
msgid "Download"
msgstr "Scarica"
#: luci-app-iperf/luasrc/view/iperf/test.htm:114
msgid "Internet protocol"
msgstr "Internet Protocol (Protocollo Internet)"
#: luci-app-iperf/luasrc/view/iperf/test.htm:26
#: luci-app-iperf/luasrc/view/iperf/test.htm:66
msgid "Loading"
msgstr "Caricamento in corso"
#: luci-app-iperf/luasrc/view/iperf/test.htm:105
msgid "Mode of operation"
msgstr "Modalità di funzionamento"
#: luci-app-iperf/luasrc/view/iperf/test.htm:133
msgid "Number of parallel client streams to run"
msgstr "Numero di flussi client paralleli da eseguire"
#: luci-app-iperf/luasrc/view/iperf/test.htm:139
msgid "Omit the first n seconds"
msgstr "Ometti i primi n secondi"
#: luci-app-iperf/luasrc/view/iperf/test.htm:151
msgid "Server"
msgstr "Server"
#: luci-app-iperf/luasrc/view/iperf/test.htm:102
msgid "Settings"
msgstr "Impostazioni"
#: luci-app-iperf/luasrc/view/iperf/test.htm:123
msgid "Target bitrate (Mbits/s)"
msgstr "Bitrate desiderato (Mbits/s)"
#: luci-app-iperf/luasrc/view/iperf/test.htm:165
msgid "Test"
msgstr "Test"
#: luci-app-iperf/luasrc/view/iperf/test.htm:100
msgid "This iPerf interface is in bêta. No support for this."
msgstr "Questa interfaccia iPerf è in bêta."
#: luci-app-iperf/luasrc/view/iperf/test.htm:145
msgid "Time to transmit for (s)"
msgstr "È ora di trasmettere per (s)"
#: luci-app-iperf/luasrc/view/iperf/test.htm:26
#: luci-app-iperf/luasrc/view/iperf/test.htm:38
#: luci-app-iperf/luasrc/view/iperf/test.htm:43
#: luci-app-iperf/luasrc/view/iperf/test.htm:48
msgid "Upload"
msgstr "Carica"
#: luci-app-iperf/luasrc/view/iperf/test.htm:27
#: luci-app-iperf/luasrc/view/iperf/test.htm:67
msgid "Waiting for command to complete..."
msgstr "In attesa del completamento del comando ..."
#: luci-app-iperf/luasrc/controller/iperf.lua:8
msgid "iPerf"
msgstr "iPerf"
#: luci-app-iperf/luasrc/view/iperf/test.htm:99
msgid "iPerf speed tests"
msgstr "Prove di velocità iPerf"
#: luci-app-iperf/luasrc/controller/iperf.lua:7
msgid "iperf"
msgstr "iPerf"

View file

@ -0,0 +1,46 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-09-21 12:51+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: Italian <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsmail/it/>\n"
"Language: it\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.0.4\n"
msgid "From"
msgstr "Da"
msgid "Mail settings"
msgstr "Impostazioni mail"
msgid "Password"
msgstr "Password"
msgid "Port"
msgstr "Porta"
msgid "SMTP"
msgstr "SMTP"
msgid "STARTTLS"
msgstr "STARTTLS"
msgid "Server"
msgstr "Server"
msgid "Set mail settings for services that need to send mails."
msgstr ""
"Configurare le impostazioni di posta per i servizi che devono inviare "
"messaggi di posta elettronica."
msgid "TLS"
msgstr "TLS"
msgid "To"
msgstr "A"
msgid "Username"
msgstr "Username"

View file

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-08-14 08:04+0000\n"
"Last-Translator: Andreas Dorfer <adorferen@gmail.com>\n"
"PO-Revision-Date: 2020-10-05 12:39+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: German <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsmlvpn/de/>\n"
"Language: de\n"
@ -11,16 +11,16 @@ msgstr ""
"X-Generator: Weblate 4.0.4\n"
msgid "Add"
msgstr "hinzufügen"
msgstr "Hinzufügen"
msgid "Enable"
msgstr "anschalten"
msgstr "Aktivieren"
msgid "First remote port"
msgstr "Erster Gegenstellen-Port"
msgid "Interface name"
msgstr "Anschluss-Bezeichnung"
msgstr "Name der Verbindung"
msgid "Interface will increase port used beginning with this"
msgstr "Der Anschluss wird die Pornummern nutzen beginnend mit diesem Wert"
@ -29,7 +29,7 @@ msgid "Interfaces"
msgstr "Anschlüsse"
msgid "Invalid"
msgstr "ungültig"
msgstr "Ungültig"
msgid "Loss tolerance"
msgstr "Verlust-Toleranz"

View file

@ -1,22 +1,23 @@
msgid ""
msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.6\n"
"Last-Translator: Ycarus <ycarus@zugaina.org>\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"PO-Revision-Date: 2020-09-30 08:50+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: French <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsmlvpn/fr/>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.0.4\n"
msgid "Add"
msgstr "Ajouter"
msgid "Enable"
msgstr "Activé"
msgstr "Activer"
msgid "First remote port"
msgstr "Premier port distant"

View file

@ -0,0 +1,59 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-09-21 12:51+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: Italian <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsmlvpn/it/>\n"
"Language: it\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.0.4\n"
msgid "Add"
msgstr "Aggiungi"
msgid "Enable"
msgstr "Attivare"
msgid "First remote port"
msgstr "Prima porta remota"
msgid "Interface name"
msgstr "Nome interfaccia"
msgid "Interface will increase port used beginning with this"
msgstr "L&#39;interfaccia aumenterà la porta utilizzata a partire da questa"
msgid "Interfaces"
msgstr "Interfaccia"
msgid "Invalid"
msgstr "Non valido"
msgid "Loss tolerance"
msgstr "Tolleranza alla perdita"
msgid "MLVPN"
msgstr "MLVPN"
msgid "Mode"
msgstr "Modo"
msgid "Password"
msgstr "Password"
msgid "Remote host"
msgstr "Rimuovi server"
msgid "Remote/Bind port"
msgstr "Porta remota / Bind"
msgid "Reorder buffer size"
msgstr ""
msgid "Settings"
msgstr "Impostazioni"
msgid "Timeout (s)"
msgstr ""

View file

@ -71,12 +71,13 @@ function multipath_bandwidth()
multipath = "off"
end
if multipath == "on" or multipath == "master" or multipath == "backup" or multipath == "handover" then
local bwc = luci.sys.exec("luci-bwc -i %q 2>/dev/null" % dev) or ""
local bwc = luci.sys.exec("luci-bwc -i %q 2>/dev/null" % dev) or ""
if bwc ~= nil then
--result[dev] = "[" .. string.gsub(bwc, '[\r\n]', '') .. "]"
result[intname] = "[" .. string.gsub(bwc, '[\r\n]', '') .. "]"
else
result[dev] = "[]"
result[intname] = "[]"
end
end
end
@ -95,14 +96,11 @@ function multipath_bandwidth()
value=(string.gsub(value, "^%[%[", ""))
value=(string.gsub(value, "%]%]", ""))
local temp1 = string.split(value, "],")
if temp1[2] ~= nil then
res[key][1]=temp1[1]
for i=2,60 do
res[key][i]={}
if temp1[i] ~= "" and temp1[i] ~= nil then
res[key][i]=(string.gsub(temp1[i], "%[", " "))
else
res[key][i]="0,0,0,0,0"
end
end
for i=1,60 do
res[key][i] = string.split(res[key][i], ",")
@ -121,6 +119,7 @@ function multipath_bandwidth()
end
end
end
end
for i=1,60 do
for j=1,5 do
if "number"== type(res["total"][i][j]) then

View file

@ -190,13 +190,6 @@
height = dnsvg.offsetHeight - 2;
data_wanted = Math.ceil(width / step);
/* prefill datasets
for (var i = 0; i < data_wanted; i++)
{
data_tx[i] = 0;
}
*/
/* find svg elements */
labeldn_25 = Gdn.getElementById('label_25');
labeldn_50 = Gdn.getElementById('label_50');

View file

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-08-14 08:04+0000\n"
"Last-Translator: Andreas Dorfer <adorferen@gmail.com>\n"
"PO-Revision-Date: 2020-10-05 12:39+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: German <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsmptcp/de/>\n"
"Language: de\n"
@ -81,7 +81,7 @@ msgstr "Ankommend:"
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_check.htm:48
msgid "Interface"
msgstr "Anschluss"
msgstr "Schnittstelle"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:55
msgid "Interfaces Settings"

View file

@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: 2020-08-03 12:39+0000\n"
"PO-Revision-Date: 2020-10-02 08:44+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: French <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsmptcp/fr/>\n"
@ -35,7 +35,7 @@ msgid "Download:"
msgstr "Téléchargement :"
msgid "Fullmesh subflows for each pair of IP addresses"
msgstr ""
msgstr "Sous-flux Fullmesh pour chaque paire d'adresses IP"
msgid "Inbound:"
msgstr "Entrant :"
@ -50,13 +50,13 @@ msgid "MPTCP"
msgstr "MPTCP"
msgid "Mbit/s"
msgstr ""
msgstr "Mbit/s"
msgid "Multipath TCP"
msgstr "Multipath TCP"
msgid "Multipath TCP SYN retries"
msgstr ""
msgstr "Tentatives Multipath TCP SYN"
msgid "Multipath TCP checksum"
msgstr "Somme de contrôle Multipath TCP"
@ -64,7 +64,6 @@ msgstr "Somme de contrôle Multipath TCP"
msgid "Multipath TCP path-manager"
msgstr "Gestionnaire de chemins Multipath TCP"
#, fuzzy
msgid "Multipath TCP scheduler"
msgstr "Planificateur Multipath TCP"
@ -87,7 +86,7 @@ msgid "Peak:"
msgstr "Pointe :"
msgid "Re-create fullmesh subflows after a timeout"
msgstr ""
msgstr "Recréer les sous-flux fullmesh après le délai d'expiration"
msgid "Realtime Traffic"
msgstr "Trafic temps réel"
@ -98,9 +97,8 @@ msgstr "Paramètres"
msgid "Upload:"
msgstr "Envoie :"
#, fuzzy
msgid "backup"
msgstr "copie de sauvegarde"
msgstr "remplaçant"
msgid "binder"
msgstr ""
@ -127,10 +125,10 @@ msgid "handover"
msgstr ""
msgid "kB/s"
msgstr ""
msgstr "Ko/s"
msgid "kbit/s"
msgstr ""
msgstr "kbit/s"
msgid "master"
msgstr "maître"
@ -139,14 +137,13 @@ msgid "ndiffports"
msgstr "ndiffports"
msgid "ndiffports subflows number"
msgstr ""
msgstr "Nombre de sous-flux ndiffports"
#, fuzzy
msgid "redundant"
msgstr "redondant"
msgid "round-robin"
msgstr ""
msgstr "à tour de rôle"
#~ msgid "Networks MPTCP settings"
#~ msgstr "Paramètres réseaux MPTCP"

View file

@ -0,0 +1,295 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-10-02 08:44+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: Italian <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsmptcp/it/>\n"
"Language: it\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.0.4\n"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:779
msgid "(%d minute window, %d second interval)"
msgstr "(finestra di% d minuti, intervallo di% d secondi)"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:245
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:246
msgid "(%d minutes window, %d seconds interval)"
msgstr "(finestra di% d minuti, intervallo di% d secondi)"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:319
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:322
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:377
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:932
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:942
msgid "Average:"
msgstr "Media:"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:34
msgid "BLEST"
msgstr "BLEST"
#: luci-app-mptcp/luasrc/controller/mptcp.lua:11
msgid "Bandwidth"
msgstr "Larghezza banda"
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_check.htm:43
msgid "Check if MPTCP between interface and server is working."
msgstr "Controlla se MPTCP tra l'interfaccia e il server funziona."
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:40
msgid "Congestion Control"
msgstr "Controllo della congestione"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:315
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:318
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:373
msgid "Current:"
msgstr "Corrente:"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:40
msgid "Default is bbr"
msgstr "L&#39;impostazione predefinita è bbr"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:908
msgid "Download:"
msgstr "Scarica:"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:35
msgid "ECF"
msgstr "ECF"
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_check.htm:31
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_connections.htm:31
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_fullmesh.htm:31
msgid "Error"
msgstr "Errore"
#: luci-app-mptcp/luasrc/controller/mptcp.lua:18
msgid "Established connections"
msgstr "Connessioni stabilite"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:45
msgid "Fullmesh subflows for each pair of IP addresses"
msgstr "Flussi secondari fullmesh per ogni coppia di indirizzi IP"
#: luci-app-mptcp/root/usr/share/rpcd/acl.d/luci-app-mptcp.json:3
msgid "Grant UCI access for luci-app-mptcp"
msgstr "Concedi l'accesso UCI per luci-app-mptcp"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:929
msgid "Inbound:"
msgstr "In entrata:"
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_check.htm:48
msgid "Interface"
msgstr "Interfaccia"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:56
msgid "Interfaces Settings"
msgstr "Impostazioni delle interfacce"
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_check.htm:21
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_connections.htm:21
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_fullmesh.htm:21
msgid "Loading"
msgstr "Caricamento in corso"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:90
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:690
msgid "MB/s"
msgstr "MB/s"
#: luci-app-mptcp/luasrc/controller/mptcp.lua:9
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:7
#: luci-app-mptcp/root/usr/share/luci/menu.d/luci-app-mptcp.json:3
msgid "MPTCP"
msgstr "MPTCP"
#: luci-app-mptcp/luasrc/controller/mptcp.lua:16
msgid "MPTCP Fullmesh"
msgstr "MPTCP Fullmesh"
#: luci-app-mptcp/luasrc/controller/mptcp.lua:14
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_check.htm:42
msgid "MPTCP Support Check"
msgstr "Verifica supporto MPTCP"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:99
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:699
msgid "Mbit/s"
msgstr "Mbit/s"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:18
msgid "Multipath Debug"
msgstr "Debug multipath"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:12
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:57
msgid "Multipath TCP"
msgstr "Multipath TCP"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:37
msgid "Multipath TCP SYN retries"
msgstr "Multipath TCP SYN riprova"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:15
msgid "Multipath TCP checksum"
msgstr "Multipath TCP checksum"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:21
msgid "Multipath TCP path-manager"
msgstr "Multipath TCP path-manager"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:29
msgid "Multipath TCP scheduler"
msgstr "Multipath TCP scheduler"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:27
msgid "Netlink"
msgstr "Netlink"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:7
msgid ""
"Networks MPTCP settings. Visit <a href='http://multipath-tcp.org/pmwiki.php/"
"Users/ConfigureMPTCP'>http://multipath-tcp.org/pmwiki.php/Users/"
"ConfigureMPTCP</a> for help."
msgstr ""
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:57
msgid "One interface must be set as master"
msgstr "Un'interfaccia deve essere impostata come master"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:939
msgid "Outbound:"
msgstr "In uscita:"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:323
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:326
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:381
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:935
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:945
msgid "Peak:"
msgstr "Picco:"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:48
msgid "Re-create fullmesh subflows after a timeout"
msgstr "Ricrea i flussi secondari fullmesh dopo un timeout"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:895
msgid "Realtime Traffic"
msgstr "Traffico in tempo reale"
#: luci-app-mptcp/luasrc/controller/mptcp.lua:10
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_check.htm:45
msgid "Settings"
msgstr "Impostazioni"
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_check.htm:65
msgid "Test"
msgstr "Test"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:914
msgid "Upload:"
msgstr "Carica:"
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_check.htm:21
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_connections.htm:21
#: luci-app-mptcp/luasrc/view/mptcp/mptcp_fullmesh.htm:21
msgid "Waiting for command to complete..."
msgstr "In attesa del completamento del comando ..."
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:61
msgid "backup"
msgstr "backup"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:25
msgid "binder"
msgstr ""
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:22
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:30
msgid "default"
msgstr "predefinito"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:14
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:17
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:20
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:50
msgid "disable"
msgstr "disabilita"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:59
msgid "disabled"
msgstr "disabilitato"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:13
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:16
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:19
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:49
msgid "enable"
msgstr "Attivare"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:58
msgid "enabled"
msgstr "Abilitato"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:23
msgid "fullmesh"
msgstr "fullmesh"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:85
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:318
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:322
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:326
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:376
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:380
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:384
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:685
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:930
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:933
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:936
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:940
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:943
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:946
msgid "kB/s"
msgstr "kB/s"
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:94
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:318
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:322
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:326
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:376
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:380
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:384
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:694
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:930
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:933
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:936
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:940
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:943
#: luci-app-mptcp/luasrc/view/mptcp/multipath.htm:946
msgid "kbit/s"
msgstr "kbit/s"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:60
msgid "master"
msgstr "Principale"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:24
msgid "ndiffports"
msgstr "ndiffports"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:52
msgid "ndiffports subflows number"
msgstr "ndiffports subflows number"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:32
msgid "redundant"
msgstr "ridondante"
#: luci-app-mptcp/luasrc/model/cbi/mptcp.lua:31
msgid "round-robin"
msgstr "round-robin"

View file

@ -218,7 +218,7 @@ return L.view.extend({
},this));
};
o = s.option(widgets.DeviceSelect, 'interface', _('Interface'),_('When none selected, MPTCP master interface is used.'));
o = s.option(widgets.DeviceSelect, 'interface', _('Interface'),_('When none selected, MPTCP master interface is used (or an other interface if master is down).'));
o.noaliases = true;
o.noinactive = true;
o.nocreate = true;

View file

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-08-14 08:04+0000\n"
"Last-Translator: Andreas Dorfer <adorferen@gmail.com>\n"
"PO-Revision-Date: 2020-10-05 12:39+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: German <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsomr-bypass/de/>\n"
"Language: de\n"
@ -15,7 +15,6 @@ msgid "<abbr title=\"Media Access Control\">MAC</abbr>-Address"
msgstr "<abbr title=\"Media Access Control\">MAC</abbr>-Addresse"
#: luci-app-omr-bypass/luasrc/model/cbi/omr-bypass.lua:100
#, fuzzy
msgid "<abbr tittle=\"Autonomous System Number\">ASN</abbr>"
msgstr "<abbr tittle=\"Autonomous System Number\">ASN</abbr>"
@ -78,7 +77,7 @@ msgstr "IPs und Netzwerke"
#: luci-app-omr-bypass/luasrc/model/cbi/omr-bypass.lua:109
#: luci-app-omr-bypass/luasrc/model/cbi/omr-bypass.lua:137
msgid "Interface"
msgstr "Anschluss"
msgstr "Schnittstelle"
#: luci-app-omr-bypass/luasrc/model/cbi/omr-bypass.lua:24
#: luci-app-omr-bypass/luasrc/model/cbi/omr-bypass.lua:39

View file

@ -0,0 +1,122 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-10-02 08:44+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: Italian <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsomr-bypass/it/>\n"
"Language: it\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.0.4\n"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:148
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:153
msgid "ASN"
msgstr "ASN"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:31
msgid "Domain"
msgstr "Dominio"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:26
msgid "Domains"
msgstr "Domini"
#: luci-app-omr-bypass/root/usr/share/rpcd/acl.d/luci-app-omr-bypass.json:3
msgid "Grant access to ndpi resources"
msgstr "Concedi l'accesso alle risorse ndpi"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:47
msgid "IP"
msgstr "IP"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:130
msgid "IP Address"
msgstr "Indirizzo IP"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:42
msgid "IPs and Networks"
msgstr "IP e reti"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:34
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:50
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:73
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:96
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:117
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:140
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:156
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:197
msgid "Interface"
msgstr "Interfaccia"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:104
msgid "MAC-Address"
msgstr "Indirizzo MAC"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:39
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:55
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:78
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:101
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:122
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:145
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:161
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:202
msgid "Note"
msgstr "Nota"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:24
#: luci-app-omr-bypass/root/usr/share/luci/menu.d/luci-app-omr-bypass.json:3
msgid "OMR-Bypass"
msgstr "OMR-Bypass"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:24
msgid "OpenMPTCProuter IP must be used as DNS."
msgstr "L'IP di OpenMPTCProuter deve essere utilizzato come DNS."
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:58
msgid "Ports destination"
msgstr "Destinazione dei porti"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:81
msgid "Ports source"
msgstr "Origine delle porte"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:169
msgid "Protocol/Service"
msgstr "Protocollo / servizio"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:164
msgid "Protocols and services"
msgstr "Protocolli e servizi"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:125
msgid "Source lan IP address or network"
msgstr "Indirizzo IP lan di origine o rete"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:34
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:50
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:73
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:96
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:117
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:140
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:156
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:197
msgid "When none selected, MPTCP master interface is used."
msgstr ""
"Quando non è selezionato nessuno, viene utilizzata l'interfaccia master "
"MPTCP."
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:63
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:86
msgid "port"
msgstr "Porta"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:66
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:89
msgid "protocol"
msgstr "Protocollo"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:109
msgid "source MAC-Address"
msgstr "indirizzo MAC di origine"

View file

@ -1,12 +1,12 @@
msgid ""
msgstr "Content-Type: text/plain; charset=UTF-8"
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:148
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:153
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:166
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:174
msgid "ASN"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:31
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:34
msgid "Domain"
msgstr ""
@ -14,45 +14,56 @@ msgstr ""
msgid "Domains"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:31
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:50
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:69
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:95
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:121
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:145
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:171
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:190
msgid "Enabled"
msgstr ""
#: luci-app-omr-bypass/root/usr/share/rpcd/acl.d/luci-app-omr-bypass.json:3
msgid "Grant access to ndpi resources"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:47
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:53
msgid "IP"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:130
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:148
msgid "IP Address"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:42
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:45
msgid "IPs and Networks"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:34
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:50
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:73
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:96
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:117
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:140
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:156
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:197
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:37
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:56
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:82
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:108
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:132
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:158
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:177
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:221
msgid "Interface"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:104
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:116
msgid "MAC-Address"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:39
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:55
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:78
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:101
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:122
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:145
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:161
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:202
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:42
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:61
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:87
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:113
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:137
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:163
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:182
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:226
msgid "Note"
msgstr ""
@ -65,47 +76,52 @@ msgstr ""
msgid "OpenMPTCProuter IP must be used as DNS."
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:58
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:64
msgid "Ports destination"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:81
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:90
msgid "Ports source"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:169
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:193
msgid "Protocol/Service"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:164
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:185
msgid "Protocols and services"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:125
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:140
msgid "Source lan IP address or network"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:34
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:50
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:73
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:96
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:117
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:140
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:156
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:197
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:221
msgid ""
"When none selected, MPTCP master interface is used (or an other interface if "
"master is down)."
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:37
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:56
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:82
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:108
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:132
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:158
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:177
msgid "When none selected, MPTCP master interface is used."
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:63
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:86
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:72
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:98
msgid "port"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:66
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:89
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:75
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:101
msgid "protocol"
msgstr ""
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:109
#: luci-app-omr-bypass/htdocs/luci-static/resources/view/services/omr-bypass.js:124
msgid "source MAC-Address"
msgstr ""

View file

@ -0,0 +1,158 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-09-21 12:51+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: Italian <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsomr-dscp/it/>\n"
"Language: it\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.0.4\n"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:21
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:72
msgid "CS0 - Normal/Best Effort"
msgstr "CS0 - Normale / Miglior sforzo"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:22
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:73
msgid "CS1 - Low priority"
msgstr "CS1 - Priorità bassa"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:23
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:74
msgid "CS2 - High priority"
msgstr "CS2 - Alta priorità"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:24
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:75
msgid "CS3 - SIP"
msgstr "CS3 - SIP"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:25
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:76
msgid "CS4 - Streaming video"
msgstr "CS4 - Streaming video"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:26
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:77
msgid "CS5"
msgstr "CS5"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:27
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:78
msgid "CS6 - Network routing"
msgstr "CS6 - Routing di rete"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:28
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:79
msgid "CS7"
msgstr ""
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:20
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:71
msgid "Class"
msgstr "Classe"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:15
msgid "Classification Rules"
msgstr "Regole di classificazione"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:31
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:82
msgid "Comment"
msgstr "Commenti"
#: luci-app-omr-dscp/luasrc/controller/omr-dscp.lua:6
msgid "DSCP"
msgstr ""
#: luci-app-omr-dscp/luasrc/controller/omr-dscp.lua:7
msgid "DSCP Domains"
msgstr "Domini DSCP"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:8
msgid "DSCP by domain"
msgstr "DSCP per dominio"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:57
msgid "Destination host"
msgstr "Host di destinazione"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:63
msgid "Destination ports"
msgstr "Porte di destinazione"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:10
msgid "Differentiated services"
msgstr "Servizi differenziati"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:28
msgid "Direction"
msgstr ""
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:15
msgid "Domain"
msgstr "Dominio"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:10
msgid "Domains"
msgstr "Domini"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:80
msgid "EF - Voice"
msgstr "EF - Voce"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:29
msgid "EF Voice"
msgstr "EF - Voce"
#: luci-app-omr-dscp/luasrc/controller/omr-dscp.lua:4
msgid "OMR-DSCP"
msgstr ""
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:35
msgid "Protocol"
msgstr "Protocollo"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp-domains.lua:8
msgid "Set DSCP by domains."
msgstr "Imposta DSCP per domini."
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:46
msgid "Source host"
msgstr "Host di origine"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:51
msgid "Source ports"
msgstr "Porte di origine"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:11
msgid ""
"Traffic may be classified by many different parameters, such as source "
"address, destination address or traffic type and assigned to a specific "
"traffic class."
msgstr ""
"Il traffico può essere classificato in base a molti parametri diversi, come "
"indirizzo di origine, indirizzo di destinazione o tipo di traffico e "
"assegnato a una classe di traffico specifica."
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:48
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:53
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:59
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:65
msgid "all"
msgstr "tutti"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:33
msgid "both"
msgstr "entrambi"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:32
msgid "download"
msgstr "Scarica"
#: luci-app-omr-dscp/luasrc/model/cbi/dscp.lua:31
msgid "upload"
msgstr "Carica"

View file

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-08-14 08:04+0000\n"
"Last-Translator: Andreas Dorfer <adorferen@gmail.com>\n"
"PO-Revision-Date: 2020-10-05 12:39+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: German <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsomr-quota/de/>\n"
"Language: de\n"
@ -12,11 +12,11 @@ msgstr ""
#: luci-app-omr-quota/luasrc/view/omr-quota/cbi-select-add.htm:8
msgid "Add"
msgstr "hinzufügen"
msgstr "Hinzufügen"
#: luci-app-omr-quota/luasrc/model/cbi/quota/quota.lua:21
msgid "Enable"
msgstr "anschalten"
msgstr "Aktivieren"
#: luci-app-omr-quota/luasrc/model/cbi/quota/quota.lua:10
msgid "Interfaces"
@ -28,7 +28,7 @@ msgstr "Abstand zwischen den Überfprüfungen (in Sekunden)"
#: luci-app-omr-quota/luasrc/view/omr-quota/cbi-select-add.htm:9
msgid "Invalid"
msgstr "ungültig"
msgstr "Ungültig"
#: luci-app-omr-quota/luasrc/model/cbi/quota/quota.lua:8
msgid "Monthly Quota"

View file

@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: 2020-08-03 12:39+0000\n"
"PO-Revision-Date: 2020-09-30 08:50+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: French <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsomr-quota/fr/>\n"
@ -19,7 +19,7 @@ msgstr "Ajouter"
#: luci-app-omr-quota/luasrc/model/cbi/quota/quota.lua:21
msgid "Enable"
msgstr "Activé"
msgstr "Activer"
#: luci-app-omr-quota/luasrc/model/cbi/quota/quota.lua:10
msgid "Interfaces"

View file

@ -0,0 +1,57 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-09-21 12:51+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: Italian <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsomr-quota/it/>\n"
"Language: it\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.0.4\n"
#: luci-app-omr-quota/luasrc/view/omr-quota/cbi-select-add.htm:8
msgid "Add"
msgstr "Aggiungi"
#: luci-app-omr-quota/luasrc/model/cbi/quota/quota.lua:21
msgid "Enable"
msgstr "Attivare"
#: luci-app-omr-quota/luasrc/model/cbi/quota/quota.lua:10
msgid "Interfaces"
msgstr "Interfaccia"
#: luci-app-omr-quota/luasrc/model/cbi/quota/quota.lua:33
msgid "Interval between check (s)"
msgstr "Intervallo tra i controlli (s)"
#: luci-app-omr-quota/luasrc/view/omr-quota/cbi-select-add.htm:9
msgid "Invalid"
msgstr "Non valido"
#: luci-app-omr-quota/luasrc/model/cbi/quota/quota.lua:8
msgid "Monthly Quota"
msgstr "Quota mensile"
#: luci-app-omr-quota/luasrc/controller/quota.lua:11
msgid "Quota"
msgstr ""
#: luci-app-omr-quota/luasrc/model/cbi/quota/quota.lua:27
msgid "RX quota (kbit)"
msgstr ""
#: luci-app-omr-quota/luasrc/model/cbi/quota/quota.lua:8
msgid "Set monthly quota, when quota is reached interface state is set to down"
msgstr ""
"Imposta la quota mensile, quando viene raggiunta la quota, lo stato "
"dell'interfaccia è impostato su inattivo"
#: luci-app-omr-quota/luasrc/model/cbi/quota/quota.lua:24
msgid "TX quota (kbit)"
msgstr ""
#: luci-app-omr-quota/luasrc/model/cbi/quota/quota.lua:30
msgid "TX+RX quota (kbit)"
msgstr ""

View file

@ -0,0 +1,42 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-09-21 12:51+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: Italian <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsomr-tracker/it/>\n"
"Language: it\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.0.4\n"
msgid ""
"Always ping gateway, then test connection by ping or dns. None mode only "
"ping gateway."
msgstr ""
"Esegui sempre il ping del gateway, quindi verifica la connessione tramite "
"ping o DNS."
msgid "Defaults Settings"
msgstr "Impostazioni predefinite"
msgid "Hosts"
msgstr ""
msgid "OMR-Tracker"
msgstr ""
msgid "OMR-Tracker detect when a connection is down"
msgstr "OMR-Tracker rileva quando una connessione è interrotta"
msgid "Retry interval (s)"
msgstr "Intervallo di ripetizione (s)"
msgid "Timeout (s)"
msgstr ""
msgid "Tries"
msgstr "Tentativi"
msgid "Type"
msgstr "Tipo"

View file

@ -228,8 +228,8 @@ function wizard_add()
local auth = luci.http.formvalue("cbid.network.%s.auth" % intf) or ""
local mode = luci.http.formvalue("cbid.network.%s.mode" % intf) or ""
local sqmenabled = luci.http.formvalue("cbid.sqm.%s.enabled" % intf) or "0"
local multipath = luci.http.formvalue("cbid.sqm.%s.multipath" % intf) or "on"
local lan = luci.http.formvalue("cbid.sqm.%s.lan" % intf) or "0"
local multipath = luci.http.formvalue("cbid.network.%s.multipath" % intf) or "on"
local lan = luci.http.formvalue("cbid.network.%s.lan" % intf) or "0"
if typeintf ~= "" then
if typeintf == "normal" then
typeintf = ""
@ -259,6 +259,7 @@ function wizard_add()
ucic:set("network",intf,"multipath","off")
else
ucic:set("network",intf,"multipath",multipath)
ucic:set("openmptcprouter",intf,"multipath",multipath)
end
ucic:set("network",intf,"defaultroute",0)
ucic:set("network",intf,"peerdns",0)
@ -713,10 +714,10 @@ function wizard_add()
luci.sys.call("(env -i /bin/ubus call network reload) >/dev/null 2>/dev/null")
luci.sys.call("/etc/init.d/omr-tracker stop >/dev/null 2>/dev/null")
luci.sys.call("/etc/init.d/mptcp restart >/dev/null 2>/dev/null")
if openmptcprouter_vps_key ~= "" then
luci.sys.call("/etc/init.d/openmptcprouter-vps restart >/dev/null 2>/dev/null")
luci.sys.call("sleep 2")
end
--if openmptcprouter_vps_key ~= "" then
-- luci.sys.call("/etc/init.d/openmptcprouter-vps restart >/dev/null 2>/dev/null")
-- luci.sys.call("sleep 2")
--end
luci.sys.call("/etc/init.d/shadowsocks-libev restart >/dev/null 2>/dev/null")
luci.sys.call("/etc/init.d/glorytun restart >/dev/null 2>/dev/null")
luci.sys.call("/etc/init.d/glorytun-udp restart >/dev/null 2>/dev/null")

View file

@ -33,7 +33,7 @@
end
%>
<hr />
<form class="inline" method="post" action="<%=url('admin/system/openmptcprouter/settings_add')%>">
<div class="cbi-map">
<h2 name="content"><%:Advanced Settings%></h2>
@ -111,6 +111,7 @@
end
%>
</fieldset>
<hr />
<fieldset class="cbi-section" id="networks">
<legend><%:Networks settings%></legend>
<div class="cbi-section-descr"></div>

View file

@ -72,12 +72,12 @@
{
if (mArray.openmptcprouter.remote_from_lease == false)
{
var title = String.format("%s (%s)",'You', mArray.openmptcprouter.remote_addr);
var title = String.format("%s (%s)",'<%:You%>', mArray.openmptcprouter.remote_addr);
var statusMessageClass = "warning";
var statusIcon = "<%=resource%>/openmptcprouter/images/statusWarning.png";
var statusMessage = _('Your IP was not leased by this router');
var statusMessage = '<%:Your IP was not leased by this router%>';
} else {
var title = String.format('<br /><strong>%s (%s)</strong>', mArray.openmptcprouter.remote_hostname ? mArray.openmptcprouter.remote_hostname : _('You'), mArray.openmptcprouter.remote_addr)
var title = String.format('<br /><strong>%s (%s)</strong>', mArray.openmptcprouter.remote_hostname ? mArray.openmptcprouter.remote_hostname : _('<%:You%>'), mArray.openmptcprouter.remote_addr)
var statusMessageClass = "";
var statusIcon = "<%=resource%>/openmptcprouter/images/statusOK.png";
var statusMessage = "";
@ -116,24 +116,24 @@
content += "Version " + mArray.openmptcprouter.version;
if (mArray.openmptcprouter.latest_version_omr != mArray.openmptcprouter.version && mArray.openmptcprouter.latest_version_omr != "")
{
content += "<br><i>(" + _('Latest available version') + " " + mArray.openmptcprouter.latest_version_omr + ")</i>";
content += "<br><i>(" + '<%:Latest available version%>' + " " + mArray.openmptcprouter.latest_version_omr + ")</i>";
}
content += "<br />";
}
if (mArray.openmptcprouter.loadavg)
{
content += _('Load:') + " " + mArray.openmptcprouter.loadavg;
content += '<%:Load:%>' + " " + mArray.openmptcprouter.loadavg;
content += "<br />";
}
if (mArray.openmptcprouter.core_temp)
{
content += _('Core temp:') + " " + (mArray.openmptcprouter.core_temp / 1000).toFixed(1) + " &#176;";
content += '<%:Core temp:%>' + " " + (mArray.openmptcprouter.core_temp / 1000).toFixed(1) + " &#176;";
content += "<br />";
}
if (mArray.openmptcprouter.uptime)
{
var date = new Date(null);
content += _('Uptime:') + " " + String.format('%t', mArray.openmptcprouter.uptime);
content += '<%:Uptime:%>' + " " + String.format('%t', mArray.openmptcprouter.uptime);
content += "<br />";
}
if (mArray.openmptcprouter.dhcpd)
@ -141,8 +141,8 @@
for ( dhcpd in mArray.openmptcprouter.dhcpd )
{
var dhcp = mArray.openmptcprouter.dhcpd[dhcpd];
content += String.format('<span style="text-transform:capitalize;">%s</span> %s %s<br />', dhcp.interface, _('address:') ,dhcp.router);
content += String.format('<span style="text-transform:capitalize;">%s</span> %s %s - %s<br />', dhcp.interface, _('range:'), dhcp.range_start, dhcp.range_end);
content += String.format('<span style="text-transform:capitalize;">%s</span> %s %s<br />', dhcp.interface, '<%:address:%>' ,dhcp.router);
content += String.format('<span style="text-transform:capitalize;">%s</span> %s %s - %s<br />', dhcp.interface, '<%:range:%>', dhcp.range_start, dhcp.range_end);
}
}
@ -150,10 +150,10 @@
{
if (mArray.openmptcprouter.shadowsocks_service == false)
{
statusMessage += _('ShadowSocks is not running');
statusMessage += '<%:ShadowSocks is not running%>';
if (mArray.openmptcprouter.shadowsocks_service_key == false && mArray.openmptcprouter.shadowsocks_service_method !== "none")
{
statusMessage += ' <i>(' + _('empty key') + ')</i>';
statusMessage += ' <i>(' + '<%:empty key%>' + ')</i>';
}
statusMessage += '<br/>';
}
@ -162,25 +162,25 @@
{
if (mArray.openmptcprouter.v2ray_service == false)
{
statusMessage += _('V2Ray is not running');
statusMessage += '<%:V2Ray is not running%>';
statusMessage += '<br/>';
}
}
if (mArray.openmptcprouter.fsro == true)
{
statusMessage += _('Filesystem is readonly') + '<br/>';
statusMessage += '<%:Filesystem is readonly%>' + '<br/>';
}
if (mArray.openmptcprouter.multi_vpn == true)
{
statusMessage += _('More than one default VPN is enabled') + '<br/>';
statusMessage += '<%:More than one default VPN is enabled%>' + '<br/>';
}
if (mArray.openmptcprouter.tun_service == false && mArray.openmptcprouter.service_addr != "")
{
statusMessage += _('VPN is not running') + '<br/>';
statusMessage += '<%:VPN is not running%>' + '<br/>';
}
if (mArray.openmptcprouter.dns == false)
{
statusMessage += _('DNS issue: can\'t resolve hostname') + '<br/>';
statusMessage += '<%:DNS issue: can\'t resolve hostname%>' + '<br/>';
}
if(statusMessage !== "")
@ -191,20 +191,20 @@
{
if (mArray.openmptcprouter.v2ray_enabled == false && mArray.openmptcprouter.shadowsocks_enabled == false)
{
statusMessage += _('Proxy is DISABLED') + '<br/>';
statusMessage += '<%:Proxy is DISABLED%>' + '<br/>';
}
if (mArray.openmptcprouter.tun_state == "DOWN")
{
statusMessage += _('VPN tunnel DOWN') + '<br/>';
statusMessage += '<%:VPN tunnel DOWN%>' + '<br/>';
}
if (mArray.openmptcprouter.ipv6 == "enabled")
{
if (mArray.openmptcprouter.tun6_state == "DOWN")
{
statusMessage += _('IPv6 tunnel DOWN') + '<br/>';
statusMessage += '<%:IPv6 tunnel DOWN%>' + '<br/>';
} else if (mArray.openmptcprouter.wan_addr6 == '')
{
statusMessage += _('No IPv6 access') + '<br/>';
statusMessage += '<%:No IPv6 access%>' + '<br/>';
}
}
if (statusMessage !== "")
@ -240,16 +240,16 @@
} else if (mArray.openmptcprouter.external_check == false) {
var title = String.format("%s ?", mArray.openmptcprouter.vps_hostname);
} else {
var title = _('No output');
statusMessage += _('No output') + '<br/>';
var title = '<%:No output%>';
statusMessage += '<%:No output%>' + '<br/>';
}
if (mArray.openmptcprouter.wan_addr == "" && mArray.openmptcprouter.ss_addr == "" && mArray.openmptcprouter.external_check == true)
{
statusMessage += _('No server IP address, No WAN IP address') + '<br/>';
statusMessage += '<%:No server IP address, No WAN IP address%>' + '<br/>';
}
if (mArray.openmptcprouter.service_addr !== "" && mArray.openmptcprouter.wan_addr !== "" && mArray.openmptcprouter.vps_status == "DOWN")
{
statusMessage += _('Can\'t access and use server part') + '<br/>';
statusMessage += '<%:Can\'t access and use server part%>' + '<br/>';
}
if (statusMessage !== "")
{
@ -258,21 +258,21 @@
}
if (mArray.openmptcprouter.service_addr == "")
{
statusMessage += _('No server defined') + '<br/>';
statusMessage += '<%:No server defined%>' + '<br/>';
} else {
if (mArray.openmptcprouter.vps_status == "DOWN")
{
statusMessage += _('Can\'t ping server') + '<br/>';
statusMessage += '<%:Can\'t ping server%>' + '<br/>';
} else if (mArray.openmptcprouter.shadowsocks_enabled == true && mArray.openmptcprouter.ss_addr == "" && mArray.openmptcprouter.external_check == true)
{
statusMessage += _('Can\'t get public IP address from ShadowSocks') + '<br/>';
statusMessage += '<%:Can\'t get public IP address from ShadowSocks%>' + '<br/>';
} else if (mArray.openmptcprouter.wan_addr == "" && mArray.openmptcprouter.external_check == true)
{
statusMessage += _('No WAN IP address detected in less than 1 second') + '<br/>';
statusMessage += '<%:No WAN IP address detected in less than 1 second%>' + '<br/>';
}
if (mArray.openmptcprouter.vps_admin == false)
{
statusMessage += _('Can\'t contact Server Admin Script');
statusMessage += '<%:Can\'t contact Server Admin Script%>';
if (mArray.openmptcprouter.vps_admin_error_msg !== "")
{
statusMessage += ' <i>(' + mArray.openmptcprouter.vps_admin_error_msg + ')</i>';
@ -281,11 +281,11 @@
}
if (mArray.openmptcprouter.vps_mptcp == "0")
{
statusMessage += _('MPTCP is not enabled on the server') + '<br/>';
statusMessage += '<%:MPTCP is not enabled on the server%>' + '<br/>';
}
if (mArray.openmptcprouter.vps_time_accurate == false)
{
statusMessage += _('Big time difference between the server and the router') + '<br/>';
statusMessage += '<%:Big time difference between the server and the router%>' + '<br/>';
}
}
if (statusMessage !== "" && statusMessageClass !== "error")
@ -295,52 +295,52 @@
}
if (mArray.openmptcprouter.vps_omr_version)
{
content += _('Version') + " " + mArray.openmptcprouter.vps_omr_version;
content += '<%:Version%>' + " " + mArray.openmptcprouter.vps_omr_version;
if (mArray.openmptcprouter.vps_kernel)
{
content += " " + mArray.openmptcprouter.vps_kernel;
}
if (mArray.openmptcprouter.latest_version_vps !== mArray.openmptcprouter.vps_omr_version && mArray.openmptcprouter.latest_version_vps !== "")
{
content += "<br><i>(" + _('Latest available version') + " " + mArray.openmptcprouter.latest_version_vps + ")</i>";
content += "<br><i>(" + '<%:Latest available version%>' + " " + mArray.openmptcprouter.latest_version_vps + ")</i>";
}
content += "<br />";
}
if (mArray.openmptcprouter.vps_loadavg)
{
content += _('Load:') + " " + mArray.openmptcprouter.vps_loadavg;
content += '<%:Load:%>' + " " + mArray.openmptcprouter.vps_loadavg;
content += "<br />";
}
if (mArray.openmptcprouter.vps_uptime)
{
var date = new Date(null);
content += _('Uptime:') + " " + String.format('%t', mArray.openmptcprouter.vps_uptime);
content += '<%:Uptime:%>' + " " + String.format('%t', mArray.openmptcprouter.vps_uptime);
content += "<br />";
}
if (mArray.openmptcprouter.server_mptcp == "disabled")
{
statusMessage += _('MPTCP may not be enabled on the server') + '<br/>';
statusMessage += '<%:MPTCP may not be enabled on the server%>' + '<br/>';
statusMessageClass = "warning";
statusIcon = "<%=resource%>/openmptcprouter/images/statusWarning.png";
}
if (mArray.openmptcprouter.wan_addr6)
{
content += _('IPv6:') + " " + mArray.openmptcprouter.wan_addr6;
content += '<%:IPv6:%>' + " " + mArray.openmptcprouter.wan_addr6;
content += '<br />';
}
if (mArray.openmptcprouter.proxy_traffic && mArray.openmptcprouter.proxy_traffic != 0)
{
content += _('Proxy traffic:') + " " + formatBytes(mArray.openmptcprouter.proxy_traffic);
content += '<%:Proxy traffic:%>' + " " + formatBytes(mArray.openmptcprouter.proxy_traffic);
content += '<br />';
}
if (mArray.openmptcprouter.vpn_traffic && mArray.openmptcprouter.vpn_traffic != 0)
{
content += _('VPN traffic:') + " " + formatBytes(mArray.openmptcprouter.vpn_traffic);
content += '<%:VPN traffic:%>' + " " + formatBytes(mArray.openmptcprouter.vpn_traffic);
content += '<br />';
}
if (mArray.openmptcprouter.total_traffic && mArray.openmptcprouter.total_traffic != 0)
{
content += _('Total traffic:') + " " + formatBytes(mArray.openmptcprouter.total_traffic);
content += '<%:Total traffic:%>' + " " + formatBytes(mArray.openmptcprouter.total_traffic);
content += '<br />';
}
content += '<br />';
@ -436,35 +436,35 @@
var content = "";
if(ipaddr !== '')
{
content += String.format('%s <strong>%s</strong><br />',_('ip address:'), ipaddr);
content += String.format('%s <strong>%s</strong><br />','<%:ip address:%>', ipaddr);
}
if(wanip !== '')
{
content += String.format('%s <strong>%s</strong><br />',_('wan address:'), wanip);
content += String.format('%s <strong>%s</strong><br />','<%:wan address:%>', wanip);
}
if(whois !== '')
{
content += String.format('%s %s<br />',_('whois:'), whois);
content += String.format('%s %s<br />','<%:whois:%>', whois);
}
if(latency !== '')
{
content += String.format('%s %s ms<br />',_('latency:'), latency);
content += String.format('%s %s ms<br />','<%:latency:%>', latency);
}
if(mtu !== '')
{
content += String.format('%s %s<br />',_('mtu:'), mtu);
content += String.format('%s %s<br />','<%:mtu:%>', mtu);
}
if (operator !== '')
{
content += String.format('%s %s<br />',_('operator:'), operator);
content += String.format('%s %s<br />','<%:operator:%>', operator);
}
if (phonenumber !== '' && anonymize !== 'true')
{
content += String.format('%s %s<br />',_('phone number:'), phonenumber);
content += String.format('%s %s<br />','<%:phone number:%>', phonenumber);
}
if (donglestate !== '')
{
content += String.format('%s %s<br />',_('state:'), donglestate);
content += String.format('%s %s<br />','<%:state:%>', donglestate);
}
if(signal !== '')
@ -486,64 +486,64 @@
}
if(ipaddr == '')
{
statusMessage += _('No IP defined') + '<br />';
statusMessage += '<%:No IP defined%>' + '<br />';
}
if(gateway == '')
{
statusMessage += _('No gateway defined') + '<br />';
statusMessage += '<%:No gateway defined%>' + '<br />';
} else if(gw_ping == 'DOWN')
{
statusMessage += _('Gateway DOWN') + '<br />';
statusMessage += '<%:Gateway DOWN%>' + '<br />';
} else if(multipath_available == 'ERROR')
{
statusMessage += _('Multipath seems to be blocked on the connection') + '<br />';
statusMessage += '<%:Multipath seems to be blocked on the connection%>' + '<br />';
}
if(server_ping == 'DOWN' && mArray.openmptcprouter.service_addr !== "")
{
statusMessage += _('No Server ping response after 1 second') + '<br />';
statusMessage += '<%:No Server ping response after 1 second%>' + '<br />';
}
if (stat == 'Offline' && ipaddr != '' && ipaddr == mArray.wans[i].gateway)
{
statusMessage += _('Wan IP and gateway are identical') + '<br />';
statusMessage += '<%:Wan IP and gateway are identical%>' + '<br />';
statusMessageClass = "error";
}
if(multipath == 'master')
{
if (master > 1)
{
statusMessage += _('Multipath master already defined') + '<br />';
statusMessage += '<%:Multipath master already defined%>' + '<br />';
statusMessageClass = "error";
}
if(multipath_state !== 'on' && multipath_state !== '')
{
statusMessage += _('Multipath current state is ') + multipath_state + '<br />';
statusMessage += '<%:Multipath current state is %>' + multipath_state + '<br />';
statusMessageClass = "error";
}
} else {
if(multipath !== multipath_state && multipath_state !== '')
{
statusMessage += _('Multipath current state is ') + multipath_state + '<br />';
statusMessage += '<%:Multipath current state is %>' + multipath_state + '<br />';
statusMessageClass = "error";
}
}
if(duplicateif)
{
statusMessage += _('Network interface duplicated') + '<br />';
statusMessage += '<%:Network interface duplicated%>' + '<br />';
statusMessageClass = "error";
}
if(ipv6_discover == 'DETECTED')
{
statusMessage += _('IPv6 route received') + '<br />'
statusMessage += '<%:IPv6 route received%>' + '<br />'
}
if (statusMessage !== "" && statusMessageClass !== "error")
{
statusMessageClass = "warning";
statusIcon = "<%=resource%>/openmptcprouter/images/statusWarning.png";
}
content += String.format('multipath: %s<br />',multipath);
content += String.format('<%:multipath:%> %s<br />',multipath);
if(mArray.wans[i].qos && mArray.wans[i].download > 0 && mArray.wans[i].upload > 0)
{
content += String.format('%s %s/%s kbps (%s)',_('traffic control:'), mArray.wans[i].download, mArray.wans[i].upload, mArray.wans[i].qos)
content += String.format('%s %s/%s kbps (%s)','<%:traffic control:%>', mArray.wans[i].download, mArray.wans[i].upload, mArray.wans[i].qos)
}
temp += getNetworkNodeTemplate(equipmentIcon, statusIcon, title, statusMessageClass,statusMessage,content);
@ -627,79 +627,79 @@
var content = "";
if(ipaddr !== '')
{
content += String.format('%s <strong>%s</strong><br />',_('ip address:'), ipaddr);
content += String.format('%s <strong>%s</strong><br />','<%:ip address:%>', ipaddr);
}
if(wanip !== '')
{
content += String.format('%s <strong>%s</strong><br />',_('wan address:'), wanip);
content += String.format('%s <strong>%s</strong><br />','<%:wan address:%>', wanip);
}
if(whois !== '')
{
content += String.format('%s %s<br />',_('whois:'), whois);
content += String.format('%s %s<br />','<%:whois:%>', whois);
}
if(latency !== '')
{
content += String.format('%s %s ms<br />',_('latency:'), latency);
content += String.format('%s %s ms<br />','<%:latency:%>', latency);
}
if(mtu !== '')
{
content += String.format('%s %s<br />',_('mtu:'), mtu);
content += String.format('%s %s<br />','<%:mtu:%>', mtu);
}
if(ipaddr == '')
{
statusMessage += _('No IP defined') + '<br />'
statusMessage += '<%:No IP defined%>' + '<br />'
}
if(gateway == '')
{
statusMessage += _('No gateway defined') + '<br />'
statusMessage += '<%:No gateway defined%>' + '<br />'
} else if(gw_ping == 'DOWN')
{
statusMessage += _('Gateway DOWN') + '<br />'
statusMessage += '<%:Gateway DOWN%>' + '<br />'
} else if(multipath_available == 'ERROR')
{
statusMessage += _('Multipath seems to be blocked on the connection') + '<br />'
statusMessage += '<%:Multipath seems to be blocked on the connection%>' + '<br />'
}
if(server_ping == 'DOWN')
{
statusMessage += _('No Server ping response after 1 second') + '<br />'
statusMessage += '<%:No Server ping response after 1 second%>' + '<br />'
}
if (stat == 'Offline' && ipaddr != '' && ipaddr == mArray.tunnels[i].gateway)
{
statusMessage += _('Wan IP and gateway are identical') + '<br />';
statusMessage += '<%:Wan IP and gateway are identical%>' + '<br />';
statusMessageClass = "error";
}
if(multipath == 'master')
{
if (master > 1)
{
statusMessage += _('Multipath master already defined') + '<br />';
statusMessage += '<%:Multipath master already defined%>' + '<br />';
statusMessageClass = "error";
}
if(multipath_state !== 'on' && multipath_state !== '')
{
statusMessage += _('Multipath current state is ') + multipath_state + '<br />';
statusMessage += '<%:Multipath current state is %>' + multipath_state + '<br />';
statusMessageClass = "error";
}
} else {
if(multipath !== multipath_state && multipath_state !== '')
{
statusMessage += _('Multipath current state is ') + multipath_state + '<br />';
statusMessage += '<%:Multipath current state is %>' + multipath_state + '<br />';
statusMessageClass = "error";
}
}
if(duplicateif)
{
statusMessage += _('Network interface duplicated') + '<br />';
statusMessage += '<%:Network interface duplicated%>' + '<br />';
statusMessageClass = "error";
}
if(ipv6_discover == 'DETECTED')
{
statusMessage += _('IPv6 route received') + '<br />'
statusMessage += '<%:IPv6 route received%>' + '<br />'
}
content += String.format('multipath: %s<br />',multipath);
content += String.format('<%:multipath:%> %s<br />',multipath);
if(mArray.tunnels[i].qos && mArray.tunnels[i].download > 0 && mArray.tunnels[i].upload > 0)
{
content += String.format('%s %s/%s kbps (%s)',_('traffic control:'), mArray.tunnels[i].download, mArray.tunnels[i].upload, mArray.tunnels[i].qos)
content += String.format('%s %s/%s kbps (%s)','<%:traffic control:%>', mArray.tunnels[i].download, mArray.tunnels[i].upload, mArray.tunnels[i].qos)
}
temp += getNetworkNodeTemplate(equipmentIcon, statusIcon, title, statusMessageClass,statusMessage,content);
@ -709,7 +709,7 @@
temp += '</tr></table>';
}
if (mArray === null) {
temp += _('No data');
temp += '<%:No data%>';
}
temp += '</li>';
// Close tree

View file

@ -342,6 +342,7 @@ end
</div>
</fieldset>
</span>
<hr />
<fieldset class="cbi-section" id="laninterfaces">
<legend><%:LAN interfaces settings%></legend>
<%
@ -379,6 +380,9 @@ end
</div>
</div>
</div>
<%
if uci:get("network",ifname,"type") ~= "bridge" then
%>
<div class="cbi-value" id="cbi-network-<%=ifname%>-intf" data-depends="[{&#34;cbid.network.<%=ifname%>.proto&#34;:&#34;static&#34;},{&#34;cbid.network.<%=ifname%>.proto&#34;:&#34;dhcp&#34;}]" data-index="4">
<label class="cbi-value-title"><%:Physical interface%></label>
<div class="cbi-value-field">
@ -405,6 +409,9 @@ end
</div>
</div>
</div>
<%
end
%>
<div class="cbi-value" id="cbi-network-<%=ifname%>-address" data-depends="[{&#34;cbid.network.<%=ifname%>.proto&#34;:&#34;static&#34;},{&#34;cbid.network.<%=ifname%>.type&#34;:&#34;macvlan&#34;}]" data-index="5">
<label class="cbi-value-title"><%:IPv4 address%></label>
<div class="cbi-value-field">
@ -423,7 +430,7 @@ end
end
%>
<hr />
<fieldset class="cbi-section" id="interfaces">
<legend><%:Interfaces settings%></legend>
<div class="cbi-section-descr"><%:You must disable DHCP on your modems and set IP in different networks.%></div>
@ -690,6 +697,21 @@ end
<input type="text" id="cbid.network.<%=ifname%>.delay" name="cbid.network.<%=ifname%>.delay" class="cbi-input-text" value="<%=uci:get("network",ifname,"delay")%>">
</div>
</div>
<%
if uci:get("openmptcprouter",ifname,"multipathvpn") == "1" then
%>
<div class="cbi-value" id="cbi-network-<%=ifname%>-multipath" data-index="13">
<label class="cbi-value-title"><%:Multipath TCP%></label>
<div class="cbi-value-field">
<select class="cbi-input-select" data-update="change" id="cbid.network.<%=ifname%>.multipath" name="cbid.network.<%=ifname%>.multipath" size="1">
<option value="on"<% if uci:get("network","ovpn" .. ifname,"multipath") == "on" then %> selected="selected"<% end %>><%:Enabled%></option>
<option value="off"<% if uci:get("network","ovpn" .. ifname,"multipath") == "off" then %> selected="selected"<% end %>><%:Disabled%></option>
<option value="master"<% if uci:get("network","ovpn" .. ifname,"multipath") == "master" then %> selected="selected"<% end %>><%:Master%></option>
<option value="backup"<% if uci:get("network","ovpn" .. ifname,"multipath") == "backup" then %> selected="selected"<% end %>><%:Backup%></option>
</select>
</div>
</div>
<% else %>
<div class="cbi-value" id="cbi-network-<%=ifname%>-multipath" data-index="13">
<label class="cbi-value-title"><%:Multipath TCP%></label>
<div class="cbi-value-field">
@ -701,6 +723,9 @@ end
</select>
</div>
</div>
<%
end
%>
<%
local download = "0"

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -14,7 +14,7 @@ msgstr ""
msgid "API username to retrieve personnalized settings from the server."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:613
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:639
msgid "APN"
msgstr ""
@ -22,7 +22,7 @@ msgstr ""
msgid "Add a new server"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:764
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:790
msgid "Add an interface"
msgstr ""
@ -51,11 +51,11 @@ msgid ""
"processor."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:639
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:665
msgid "Authentication Type"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:674
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:700
msgid "Backup"
msgstr ""
@ -72,7 +72,11 @@ msgstr ""
msgid "Beta"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:437
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:288
msgid "Big time difference between the server and the router"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:463
msgid "Bridge"
msgstr ""
@ -85,18 +89,35 @@ msgid ""
"By default proxy is used for any traffic that is TCP (and UDP for V2Ray)."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:644
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:670
msgid "CHAP"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:441
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:252
msgid "Can\\'t access and use server part"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:275
msgid "Can\\'t contact Server Admin Script"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:268
msgid "Can\\'t get public IP address from ShadowSocks"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:265
msgid "Can\\'t ping server"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:467
msgid ""
"Choose MacVLAN if you want to create a virtual interface based on a physical "
"interface."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:461
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:507
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:404
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:487
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:533
msgid "Choose physical interface."
msgstr ""
@ -104,11 +125,19 @@ msgstr ""
msgid "Common server settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:130
msgid "Core temp:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:373
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:472
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:498
msgid "DHCP"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:183
msgid "DNS issue: can\\'t resolve hostname"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:266
msgid "Debug"
msgstr ""
@ -122,13 +151,13 @@ msgid "Default VPN"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:62
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:416
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:442
msgid "Delete"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:539
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:566
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:587
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:565
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:592
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:613
msgid "Device"
msgstr ""
@ -185,11 +214,11 @@ msgstr ""
msgid "Disable tracebox test"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:672
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:698
msgid "Disabled"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:715
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:741
msgid "Download speed (Kb/s)"
msgstr ""
@ -202,7 +231,7 @@ msgstr ""
msgid "Enable IPv6"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:705
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:731
msgid "Enable SQM"
msgstr ""
@ -218,7 +247,7 @@ msgstr ""
msgid "Enable debug logs"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:671
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:697
msgid "Enabled"
msgstr ""
@ -230,6 +259,10 @@ msgstr ""
msgid "Encryption method is used for Shadowsocks, V2Ray, Glorytun and OpenVPN."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:171
msgid "Filesystem is readonly"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:150
msgid "Force retrieve all keys from server."
msgstr ""
@ -238,10 +271,15 @@ msgstr ""
msgid "Force retrieve settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:633
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:659
msgid "GPRS only"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:496
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:657
msgid "Gateway DOWN"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:253
msgid "Glorytun TCP is used by default for UDP and ICMP"
msgstr ""
@ -287,17 +325,17 @@ msgstr ""
msgid "IPv4 TCP SYN retries2"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:383
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:513
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:409
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:539
msgid "IPv4 address"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:529
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:555
msgid "IPv4 gateway"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:389
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:523
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:415
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:549
msgid "IPv4 netmask"
msgstr ""
@ -305,11 +343,24 @@ msgstr ""
msgid "IPv6 Prefix"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:536
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:697
msgid "IPv6 route received"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:156
msgid "IPv6 settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:402
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:204
msgid "IPv6 tunnel DOWN"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:328
msgid "IPv6:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:428
msgid "Interfaces settings"
msgstr ""
@ -332,17 +383,17 @@ msgstr ""
msgid "LAN interfaces settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:631
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:657
msgid "LTE"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:357
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:422
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:448
msgid "Label"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:363
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:427
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:453
msgid "Label for the interface"
msgstr ""
@ -350,6 +401,16 @@ msgstr ""
msgid "Last available backup on server:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:119
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:305
msgid "Latest available version"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:125
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:311
msgid "Load:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:277
msgid "MLVPN can replace Glorytun with connections with same latency"
msgstr ""
@ -359,15 +420,23 @@ msgstr ""
msgid "MLVPN password"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:695
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:284
msgid "MPTCP is not enabled on the server"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:322
msgid "MPTCP may not be enabled on the server"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:721
msgid "MPTCP over VPN"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:436
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:462
msgid "MacVLAN"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:673
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:699
msgid "Master"
msgstr ""
@ -383,30 +452,56 @@ msgstr ""
msgid "Minimum scaling CPU frequency"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:628
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:654
msgid "Modem default"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:662
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:688
msgid "Modem init timeout"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:473
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:499
msgid "ModemManager"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:668
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:175
msgid "More than one default VPN is enabled"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:694
msgid "Multipath TCP"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:474
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:519
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:525
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:680
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:686
msgid "Multipath current state is"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:514
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:675
msgid "Multipath master already defined"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:499
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:660
msgid "Multipath seems to be blocked on the connection"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:500
msgid "NCM"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:642
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:668
msgid "NONE"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:531
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:692
msgid "Network interface duplicated"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:792
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:794
msgid "Network overview"
@ -416,6 +511,24 @@ msgstr ""
msgid "Networks settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:489
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:650
msgid "No IP defined"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:207
msgid "No IPv6 access"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:503
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:664
msgid "No Server ping response after 1 second"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:271
msgid "No WAN IP address detected in less than 1 second"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/backup.htm:24
msgid "No available backup on server."
msgstr ""
@ -424,11 +537,33 @@ msgstr ""
msgid "No change"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:712
msgid "No data"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:493
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:654
msgid "No gateway defined"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:243
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:244
msgid "No output"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:248
msgid "No server IP address, No WAN IP address"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:261
msgid "No server defined"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:223
msgid "None"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:435
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:461
msgid "Normal"
msgstr ""
@ -472,57 +607,66 @@ msgid "Optimize for latency instead of bandwidth"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:374
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:477
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:503
msgid "Other"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:643
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:669
msgid "PAP"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:645
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:671
msgid "PAP/CHAP"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:656
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:682
msgid "PAP/CHAP password"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:650
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:676
msgid "PAP/CHAP username"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:619
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:645
msgid "PIN code"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:475
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:501
msgid "PPPoE"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:446
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:486
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:383
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:472
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:512
msgid "Physical interface"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:629
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:655
msgid "Prefer LTE"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:630
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:656
msgid "Prefer UMTS"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:368
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:467
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:493
msgid "Protocol"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:194
msgid "Proxy is DISABLED"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:179
msgid "Proxy settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:476
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:333
msgid "Proxy traffic:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:502
msgid "QMI"
msgstr ""
@ -539,7 +683,7 @@ msgid "Retrieve settings from server"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:324
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:773
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:799
msgid "Save & Apply"
msgstr ""
@ -555,7 +699,7 @@ msgstr ""
msgid "Scaling governor"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:767
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:793
msgid "Select the device you want to base the interface on."
msgstr ""
@ -586,15 +730,15 @@ msgstr ""
msgid "Server username"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:625
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:651
msgid "Service Type"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:518
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:544
msgid "Set an IP in the same network as the modem"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:534
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:560
msgid "Set here IP of the modem"
msgstr ""
@ -614,12 +758,12 @@ msgid ""
"all traffic if ShadowSocks is disabled."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:725
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:751
msgid ""
"Set value between 80-95% of max download speed link. 0 to disable SQM/QoS."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:741
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:767
msgid ""
"Set value between 80-95% of max upload speed link. 0 to disable SQM/QoS."
msgstr ""
@ -628,6 +772,10 @@ msgstr ""
msgid "Settings Wizard"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:153
msgid "ShadowSocks is not running"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:202
msgid "ShadowSocks is used for TCP."
msgstr ""
@ -642,7 +790,7 @@ msgid "Show all settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:372
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:471
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:497
msgid "Static address"
msgstr ""
@ -680,7 +828,11 @@ msgid ""
"retransmissions remain unacknowledged."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:432
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:343
msgid "Total traffic:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:458
msgid "Type"
msgstr ""
@ -693,7 +845,7 @@ msgstr ""
msgid "UBOND password"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:632
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:658
msgid "UMTS/GPRS"
msgstr ""
@ -713,15 +865,24 @@ msgstr ""
msgid "Update server"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:731
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:757
msgid "Upload speed (Kb/s)"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:720
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:736
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:136
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:317
msgid "Uptime:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:746
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:762
msgid "Used by Glorytun UDP and SQM/QoS if enabled. 0 to use default value."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:165
msgid "V2Ray is not running"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:212
msgid "V2Ray is used for TCP and UDP."
msgstr ""
@ -734,14 +895,35 @@ msgstr ""
msgid "V2Ray user id"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:179
msgid "VPN is not running"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:244
msgid "VPN settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:338
msgid "VPN traffic:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:198
msgid "VPN tunnel DOWN"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:41
msgid "VPS settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:298
msgid "Version"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:507
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:668
msgid "Wan IP and gateway are identical"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:191
msgid ""
"When enable check are done on external sites to get each WAN IP and the IP "
@ -752,7 +934,12 @@ msgstr ""
msgid "Wizard"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:700
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:75
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:80
msgid "You"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:726
msgid "You can enable MPTCP over VPN if your provider filter Multipath TCP."
msgstr ""
@ -760,7 +947,7 @@ msgstr ""
msgid "You can use DHCP if you have multiple real ethernet ports."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:481
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:507
msgid ""
"You can use DHCP if you have multiple real ethernet ports. Select other if "
"you want to use another protocol available in Network Interfaces page."
@ -770,7 +957,7 @@ msgstr ""
msgid "You can use a public IPv6 prefix only if you set only one server."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:403
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:429
msgid "You must disable DHCP on your modems and set IP in different networks."
msgstr ""
@ -778,14 +965,76 @@ msgstr ""
msgid "You should disable IPv6 here if server doesn't provide IPv6."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:710
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:736
msgid "You should disable SQM for LTE or any interfaces with variable speed."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:634
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:78
msgid "Your IP was not leased by this router"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:144
msgid "address:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:660
msgid "auto"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:156
msgid "empty key"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:439
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:630
msgid "ip address:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:451
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:642
msgid "latency:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:455
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:646
msgid "mtu:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:543
msgid "multipath:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:459
msgid "operator:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:227
msgid "other"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:463
msgid "phone number:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:145
msgid "range:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:467
msgid "state:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:546
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:702
msgid "traffic control:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:443
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:634
msgid "wan address:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:447
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wanstatus.htm:638
msgid "whois:"
msgstr ""

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,38 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-09-15 11:36+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: Italian <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationsshutdown/it/>\n"
"Language: it\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.0.4\n"
#: luci-app-shutdown/root/usr/share/rpcd/acl.d/luci-app-shutdown.json:3
msgid "Allow shutdown the device"
msgstr "Consenti l&#39;arresto del dispositivo"
#: luci-app-shutdown/htdocs/luci-static/resources/view/system/shutdown.js:23
msgid "Perform shutdown"
msgstr "Eseguire l&#39;arresto"
#: luci-app-shutdown/htdocs/luci-static/resources/view/system/shutdown.js:9
#: luci-app-shutdown/root/usr/share/luci/menu.d/luci-app-shutdown.json:3
msgid "Shutdown"
msgstr "Spegnimento"
#: luci-app-shutdown/htdocs/luci-static/resources/view/system/shutdown.js:10
msgid "Shutdown the operating system of your device"
msgstr "Arresta il sistema operativo del tuo dispositivo"
#: luci-app-shutdown/htdocs/luci-static/resources/view/system/shutdown.js:31
msgid "The poweroff command failed with code %d"
msgstr "Il comando di spegnimento non è riuscito con il codice %d"
#: luci-app-shutdown/htdocs/luci-static/resources/view/system/shutdown.js:15
msgid "Warning: There are unsaved changes that will get lost on shutdown!"
msgstr ""
"Avvertenza: sono presenti modifiche non salvate che andranno perse "
"all&#39;arresto!"

View file

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-08-14 08:04+0000\n"
"Last-Translator: Andreas Dorfer <adorferen@gmail.com>\n"
"PO-Revision-Date: 2020-10-05 12:39+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: German <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationssnmpd/de/>\n"
"Language: de\n"
@ -17,7 +17,7 @@ msgstr "Zugriff"
#: luci-app-snmpd/luasrc/view/snmpd.htm:81
#: luci-app-snmpd/luasrc/view/snmpd.htm:122
msgid "Add"
msgstr "hinzufügen"
msgstr "Hinzufügen"
#: luci-app-snmpd/luasrc/view/snmpd.htm:66
#: luci-app-snmpd/luasrc/view/snmpd.htm:116
@ -47,7 +47,7 @@ msgstr "FQDN, IP-Adresse oder CIDR-Netzmaske"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:9
#: luci-app-snmpd/luasrc/view/snmpd.htm:24
msgid "Enabled"
msgstr "aktiv"
msgstr "Aktiv"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:132
msgid "Exec"
@ -76,7 +76,7 @@ msgstr "Gruppen ermöglichen es, Zugriffsmethoden festzulegen"
#: luci-app-snmpd/luasrc/view/snmpd.htm:64
#: luci-app-snmpd/luasrc/view/snmpd.htm:114
msgid "Interface"
msgstr "Anschluss"
msgstr "Schnittstelle"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:101
msgid "Level"

View file

@ -0,0 +1,184 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-09-21 12:51+0000\n"
"Last-Translator: Weblate Admin <contact@openmptcprouter.com>\n"
"Language-Team: Italian <http://weblate.openmptcprouter.com/projects/omr/"
"luciapplicationssnmpd/it/>\n"
"Language: it\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.0.4\n"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:82
msgid "Access"
msgstr "Accesso"
#: luci-app-snmpd/luasrc/view/snmpd.htm:81
#: luci-app-snmpd/luasrc/view/snmpd.htm:122
msgid "Add"
msgstr "Aggiungi"
#: luci-app-snmpd/luasrc/view/snmpd.htm:66
#: luci-app-snmpd/luasrc/view/snmpd.htm:116
msgid "All"
msgstr "Tutti"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:139
msgid "Arguments"
msgstr "Parametri"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:42
msgid "Community"
msgstr "Community"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:23
msgid "Contact"
msgstr "Contatto"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:97
msgid "Context"
msgstr "Contesto"
#: luci-app-snmpd/luasrc/view/snmpd.htm:54
msgid "Domain, IP or network"
msgstr "Dominio, IP o rete"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:9
#: luci-app-snmpd/luasrc/view/snmpd.htm:24
msgid "Enabled"
msgstr "Abilitato"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:132
msgid "Exec"
msgstr ""
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:6
#: luci-app-snmpd/luasrc/view/snmpd.htm:21
#: luci-app-snmpd/luasrc/view/snmpd.htm:48
msgid "General"
msgstr ""
#: luci-app-snmpd/root/usr/share/rpcd/acl.d/luci-app-snmpd.json:3
msgid "Grant UCI access for luci-app-snmpd"
msgstr "Concedi l'accesso UCI per luci-app-snmpd"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:63
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:72
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:86
msgid "Group"
msgstr "Gruppo"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:63
msgid "Groups help define access methods"
msgstr "I gruppi aiutano a definire i metodi di accesso"
#: luci-app-snmpd/luasrc/view/snmpd.htm:64
#: luci-app-snmpd/luasrc/view/snmpd.htm:114
msgid "Interface"
msgstr "Interfaccia"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:101
msgid "Level"
msgstr "Livello"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:22
msgid "Location"
msgstr "Sede"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:24
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:137
msgid "Name"
msgstr "Nome"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:12
msgid "Networks"
msgstr "Reti"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:116
msgid "Notify"
msgstr "Notificare"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:136
msgid "ObjectID"
msgstr ""
#: luci-app-snmpd/luasrc/view/snmpd.htm:55
#: luci-app-snmpd/luasrc/view/snmpd.htm:90
msgid "Output interface"
msgstr "Interfaccia di output"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:138
msgid "Program"
msgstr "Programma"
#: luci-app-snmpd/luasrc/view/snmpd.htm:85
#: luci-app-snmpd/luasrc/view/snmpd.htm:89
msgid "Protocols"
msgstr "Protocollo"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:106
msgid "Read"
msgstr "Leggi"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:34
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:69
msgid "Read-only"
msgstr "Sola lettura"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:35
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:70
msgid "Read-write"
msgstr "Leggi-Scrivi"
#: luci-app-snmpd/luasrc/controller/snmpd.lua:6
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:4
#: luci-app-snmpd/luasrc/view/snmpd.htm:19
#: luci-app-snmpd/root/usr/share/luci/menu.d/luci-app-snmpd.json:3
msgid "SNMPd"
msgstr ""
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:4
msgid "SNMPd settings interface (Beta)"
msgstr "Interfaccia delle impostazioni SNMPd (Beta)"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:32
msgid "Server"
msgstr ""
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:37
msgid "Source"
msgstr ""
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:19
msgid "System"
msgstr "Sistema"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:111
msgid "Write"
msgstr "Scrittura"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:92
msgid "any"
msgstr "qualsiasi"
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:104
msgid "auth"
msgstr ""
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:29
msgid "com2sec security"
msgstr ""
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:103
msgid "noauth"
msgstr ""
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:67
msgid "secname"
msgstr ""
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:76
#: luci-app-snmpd/luasrc/model/cbi/snmpd.lua:90
msgid "version"
msgstr "versione"

View file

@ -192,6 +192,14 @@
border-bottom:1px solid rgba(0,0,0,.1);
}
.Dashboard .label-success {
background-color: green;
}
.Dashboard .label-danger {
background-color: red;
}
/**
* Responsive
**/

View file

@ -1,132 +1 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve">
<g>
<g>
<path d="M196.275,290.129H25.591C11.477,290.129,0,301.615,0,315.721v119.484c0,14.106,11.477,25.591,25.591,25.591h170.684
c14.114,0,25.591-11.486,25.591-25.591V315.721C221.867,301.615,210.389,290.129,196.275,290.129z M204.8,435.204
c0,4.702-3.823,8.525-8.525,8.525H25.591c-4.702,0-8.525-3.823-8.525-8.525V315.721c0-4.702,3.823-8.525,8.525-8.525h170.684
c4.702,0,8.525,3.823,8.525,8.525V435.204z"/>
</g>
</g>
<g>
<g>
<path d="M213.333,409.596H8.533c-4.71,0-8.533,3.814-8.533,8.533v17.075c0,14.106,11.477,25.591,25.591,25.591h170.684
c14.114,0,25.591-11.486,25.591-25.591v-17.075C221.867,413.41,218.044,409.596,213.333,409.596z M204.8,435.204
c0,4.702-3.823,8.525-8.525,8.525H25.591c-4.702,0-8.525-3.823-8.525-8.525v-8.542H204.8V435.204z"/>
</g>
</g>
<g>
<g>
<path d="M136.533,443.729h-51.2c-4.71,0-8.533,3.814-8.533,8.533v51.2c0,4.719,3.823,8.533,8.533,8.533h51.2
c4.71,0,8.533-3.814,8.533-8.533v-51.2C145.067,447.543,141.244,443.729,136.533,443.729z M128,494.929H93.867v-34.133H128
V494.929z"/>
</g>
</g>
<g>
<g>
<path d="M162.133,494.929h-102.4c-4.71,0-8.533,3.814-8.533,8.533c0,4.719,3.823,8.533,8.533,8.533h102.4
c4.71,0,8.533-3.814,8.533-8.533C170.667,498.743,166.844,494.929,162.133,494.929z"/>
</g>
</g>
<g>
<g>
<path d="M486.409,290.129H315.725c-14.114,0-25.591,11.486-25.591,25.591v119.484c0,14.106,11.477,25.591,25.591,25.591h170.684
c14.114,0,25.591-11.486,25.591-25.591V315.721C512,301.615,500.523,290.129,486.409,290.129z M494.933,435.204
c0,4.702-3.823,8.525-8.525,8.525H315.725c-4.702,0-8.525-3.823-8.525-8.525V315.721c0-4.702,3.823-8.525,8.525-8.525h170.684
c4.702,0,8.525,3.823,8.525,8.525V435.204z"/>
</g>
</g>
<g>
<g>
<path d="M503.467,409.596h-204.8c-4.71,0-8.533,3.814-8.533,8.533v17.075c0,14.106,11.477,25.591,25.591,25.591h170.684
c14.114,0,25.591-11.486,25.591-25.591v-17.075C512,413.41,508.177,409.596,503.467,409.596z M494.933,435.204
c0,4.702-3.823,8.525-8.525,8.525H315.725c-4.702,0-8.525-3.823-8.525-8.525v-8.542h187.733V435.204z"/>
</g>
</g>
<g>
<g>
<path d="M426.667,443.729h-51.2c-4.71,0-8.533,3.814-8.533,8.533v51.2c0,4.719,3.823,8.533,8.533,8.533h51.2
c4.71,0,8.533-3.814,8.533-8.533v-51.2C435.2,447.543,431.377,443.729,426.667,443.729z M418.133,494.929H384v-34.133h34.133
V494.929z"/>
</g>
</g>
<g>
<g>
<path d="M452.267,494.929h-102.4c-4.71,0-8.533,3.814-8.533,8.533c0,4.719,3.823,8.533,8.533,8.533h102.4
c4.71,0,8.533-3.814,8.533-8.533C460.8,498.743,456.977,494.929,452.267,494.929z"/>
</g>
</g>
<g>
<g>
<path d="M341.342,0.004H170.658c-14.114,0-25.591,11.486-25.591,25.591v119.475c0,14.106,11.477,25.591,25.591,25.591h170.684
c14.114,0,25.591-11.486,25.591-25.591V25.596C366.933,11.49,355.456,0.004,341.342,0.004z M349.867,145.071
c0,4.702-3.823,8.525-8.525,8.525H170.658c-4.702,0-8.525-3.823-8.525-8.525V25.596c0-4.702,3.823-8.525,8.525-8.525h170.684
c4.702,0,8.525,3.823,8.525,8.525V145.071z"/>
</g>
</g>
<g>
<g>
<path d="M358.4,119.462H153.6c-4.71,0-8.533,3.814-8.533,8.533v17.075c0,14.106,11.477,25.591,25.591,25.591h170.684
c14.114,0,25.591-11.486,25.591-25.591v-17.075C366.933,123.277,363.11,119.462,358.4,119.462z M349.867,145.071
c0,4.702-3.823,8.525-8.525,8.525H170.658c-4.702,0-8.525-3.823-8.525-8.525v-8.542h187.733V145.071z"/>
</g>
</g>
<g>
<g>
<path d="M281.6,153.596h-51.2c-4.71,0-8.533,3.814-8.533,8.533v51.2c0,4.719,3.823,8.533,8.533,8.533h51.2
c4.71,0,8.533-3.814,8.533-8.533v-51.2C290.133,157.41,286.31,153.596,281.6,153.596z M273.067,204.796h-34.133v-34.133h34.133
V204.796z"/>
</g>
</g>
<g>
<g>
<path d="M307.2,204.796H204.8c-4.71,0-8.533,3.814-8.533,8.533c0,4.719,3.823,8.533,8.533,8.533h102.4
c4.71,0,8.533-3.814,8.533-8.533C315.733,208.61,311.91,204.796,307.2,204.796z"/>
</g>
</g>
<g>
<g>
<path d="M401.067,255.996H110.933c-4.71,0-8.533,3.814-8.533,8.533v34.133c0,4.719,3.823,8.533,8.533,8.533
s8.533-3.814,8.533-8.533v-25.6h273.067v25.6c0,4.719,3.823,8.533,8.533,8.533s8.533-3.814,8.533-8.533v-34.133
C409.6,259.81,405.777,255.996,401.067,255.996z"/>
</g>
</g>
<g>
<g>
<path d="M256,230.396c-4.71,0-8.533,3.814-8.533,8.533v25.6c0,4.719,3.823,8.533,8.533,8.533s8.533-3.814,8.533-8.533v-25.6
C264.533,234.21,260.71,230.396,256,230.396z"/>
</g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32"><g stroke="#000" fill="none"><defs><symbol id="0"><path d="M6 11l0 -2 -4 0c-1,0 -1,-1 -1,-1l0 -6c0,-1 1,-1 1,-1l10 0c1,0 1,1 1,1l0 6c0,1 -1,1 -1,1l-4 0 0 2m-2 -2l2 0m-5 2l8 0"/></symbol></defs><use xlink:href="#0" x="9" y="2"/><use xlink:href="#0" x="0" y="18"/><use xlink:href="#0" x="18" y="18"/><path d="M16 14l0 3m-8 1l0 -1 16 0 0 1"/></g></svg>

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 452 B

View file

@ -1,46 +1 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 479.4 479.4" style="enable-background:new 0 0 479.4 479.4;" xml:space="preserve">
<style type="text/css">
.st0{fill:#5CB85C;}
</style>
<g>
<g>
<path class="st0" d="M239.4,0c-8.6,0-17.2,0.5-25.7,1.4c-7.8,0.8-15.6,2.1-23.2,3.7c-1.5,0.3-3,0.6-4.4,1
c-45,10.2-86,33.2-118.3,66.2c-3,3.1-5.9,6.2-8.8,9.5C-28,181.7-17.6,333.3,82.4,420.4c95.7,83.3,239.7,77.8,328.7-12.7
c3-3.1,5.9-6.2,8.8-9.5c38.4-43.8,59.6-100,59.6-158.2C479.4,107.5,372,0,239.4,0z M78.5,84.3c1.3-1.3,2.6-2.6,3.9-3.8
c1.5-1.5,3-2.9,4.5-4.4c1.3-1.2,2.7-2.4,4.1-3.7c1.5-1.4,3.1-2.7,4.7-4.1c1.4-1.2,2.8-2.3,4.2-3.4c1.6-1.3,3.2-2.6,4.8-3.8
c1.5-1.1,2.9-2.2,4.4-3.2c1.7-1.2,3.3-2.4,5-3.5c1.5-1,3-2,4.6-3c1.7-1.1,3.4-2.2,5.2-3.2c1.6-0.9,3.1-1.9,4.7-2.8
c1.8-1,3.5-2,5.3-3c1.6-0.9,3.2-1.7,4.8-2.5c1.8-0.9,3.7-1.8,5.5-2.7c1.6-0.8,3.3-1.5,4.9-2.2c1.9-0.8,3.8-1.6,5.7-2.4
c1.7-0.7,3.3-1.3,5-2c1.9-0.7,3.9-1.4,5.9-2.1c1.7-0.6,3.3-1.2,5-1.7c2-0.6,4-1.2,6-1.8c1.7-0.5,3.4-1,5.1-1.4
c0.6-0.2,1.3-0.3,1.9-0.5c-23.7,23-41.3,51.5-51.1,83c-19-5-37.4-12.1-54.8-21.1C78,84.8,78.3,84.5,78.5,84.3z M67,97.2
c19.2,10.4,39.6,18.5,60.7,24.2c-10.4,36-15.8,73.2-16.2,110.7H15.6C17.4,182.6,35.4,135.2,67,97.2z M67,382.9
c-31.6-38-49.6-85.5-51.4-134.8h95.9c0.4,37.5,5.8,74.7,16.2,110.7C106.6,364.3,86.2,372.5,67,382.9z M181.7,456.4
c-1.6-0.4-3.3-0.9-5-1.4c-2-0.6-4.1-1.2-6.1-1.8c-1.7-0.5-3.4-1.1-5-1.7c-2-0.7-3.9-1.4-5.9-2.1c-1.7-0.6-3.3-1.3-5-2
c-1.9-0.8-3.8-1.6-5.7-2.4c-1.6-0.7-3.3-1.5-4.9-2.2c-1.9-0.9-3.7-1.8-5.6-2.7c-1.6-0.8-3.2-1.6-4.8-2.5c-1.8-1-3.6-2-5.4-3
c-1.6-0.9-3.1-1.8-4.7-2.7c-1.8-1.1-3.5-2.1-5.2-3.3c-1.5-1-3-2-4.5-3c-1.7-1.2-3.4-2.4-5.1-3.6c-1.5-1-2.9-2.1-4.4-3.2
c-1.7-1.2-3.3-2.5-4.9-3.8c-1.4-1.1-2.8-2.2-4.2-3.4c-1.6-1.3-3.1-2.7-4.7-4.1c-1.4-1.2-2.7-2.4-4.1-3.6c-1.5-1.4-3-2.9-4.5-4.4
c-1.3-1.3-2.6-2.5-3.9-3.8c-0.2-0.2-0.5-0.5-0.7-0.7c17.4-9,35.8-16.1,54.8-21.1c9.9,31.5,27.4,60,51.1,83
C183,456.7,182.4,456.6,181.7,456.4z M231.4,463.4c-34.2-4.9-64.2-40.6-83.1-93.4c27.3-6.1,55.2-9.4,83.1-9.8L231.4,463.4
L231.4,463.4z M231.4,344.3c-29.7,0.4-59.2,3.9-88.1,10.5c-10-34.7-15.3-70.6-15.8-106.7h103.9L231.4,344.3L231.4,344.3z
M231.4,232H127.6c0.4-36.1,5.7-72,15.8-106.7c28.9,6.6,58.5,10.1,88.1,10.5V232z M231.4,119.8c-28-0.4-55.8-3.7-83.1-9.8
c18.9-52.8,48.9-88.5,83.1-93.4L231.4,119.8L231.4,119.8z M411.9,97.2c31.6,38,49.6,85.5,51.4,134.8h-95.9
c-0.4-37.5-5.8-74.7-16.2-110.7C372.3,115.7,392.7,107.6,411.9,97.2z M297.1,23.6c1.7,0.4,3.4,0.9,5,1.4c2,0.6,4.1,1.2,6.1,1.8
c1.7,0.5,3.4,1.1,5,1.7c2,0.7,3.9,1.4,5.9,2.1c1.7,0.6,3.3,1.3,5,2c1.9,0.8,3.8,1.6,5.7,2.4c1.6,0.7,3.3,1.5,4.9,2.2
c1.9,0.9,3.7,1.8,5.6,2.7c1.6,0.8,3.2,1.6,4.8,2.5c1.8,1,3.6,2,5.4,3c1.6,0.9,3.1,1.8,4.7,2.7c1.8,1.1,3.5,2.1,5.2,3.3
c1.5,1,3,2,4.5,3c1.7,1.2,3.4,2.3,5.1,3.5c1.5,1,2.9,2.1,4.4,3.2c1.6,1.2,3.3,2.5,4.9,3.8c1.4,1.1,2.8,2.2,4.2,3.4
c1.6,1.3,3.1,2.7,4.7,4.1c1.4,1.2,2.7,2.4,4.1,3.6c1.5,1.4,3,2.9,4.5,4.4c1.3,1.3,2.6,2.5,3.9,3.8c0.2,0.2,0.5,0.5,0.7,0.7
c-17.4,9-35.8,16.1-54.8,21.1c-9.9-31.5-27.5-60-51.2-83C295.8,23.3,296.5,23.4,297.1,23.6z M247.4,16.7
c34.2,4.9,64.2,40.6,83.1,93.4c-27.3,6.1-55.2,9.4-83.1,9.8L247.4,16.7L247.4,16.7z M247.4,135.8c29.7-0.4,59.2-3.9,88.1-10.5
c10,34.7,15.3,70.6,15.8,106.7H247.4V135.8z M247.4,248h103.9c-0.4,36.1-5.7,72-15.8,106.7l0,0c-28.9-6.6-58.5-10.1-88.1-10.5V248
z M247.4,463.4V360.3c28,0.4,55.8,3.7,83.1,9.8C311.7,422.8,281.7,458.5,247.4,463.4z M400.4,395.7c-1.3,1.3-2.6,2.6-3.9,3.8
c-1.5,1.5-3,2.9-4.5,4.4c-1.3,1.2-2.7,2.4-4.1,3.6c-1.6,1.4-3.1,2.8-4.7,4.1c-1.4,1.2-2.8,2.3-4.2,3.4c-1.6,1.3-3.2,2.6-4.8,3.8
c-1.5,1.1-2.9,2.2-4.4,3.2c-1.7,1.2-3.3,2.4-5,3.5c-1.5,1-3,2-4.6,3c-1.7,1.1-3.4,2.2-5.2,3.2c-1.6,0.9-3.1,1.8-4.7,2.8
c-1.8,1-3.6,2-5.3,3c-1.6,0.9-3.2,1.7-4.8,2.5c-1.8,0.9-3.7,1.8-5.5,2.7c-1.6,0.8-3.3,1.5-4.9,2.2c-1.9,0.8-3.8,1.6-5.7,2.4
c-1.7,0.7-3.3,1.3-5,2c-2,0.7-3.9,1.4-5.9,2.1c-1.7,0.6-3.3,1.2-5,1.7c-2,0.6-4,1.2-6,1.8c-1.7,0.5-3.4,1-5,1.4
c-0.6,0.2-1.3,0.3-1.9,0.5c23.7-23,41.3-51.5,51.1-83c19,5,37.4,12.1,54.8,21.1C400.9,395.2,400.6,395.5,400.4,395.7z
M411.9,382.9c-19.2-10.4-39.6-18.5-60.7-24.2c10.4-36,15.8-73.2,16.2-110.7h95.9C461.5,297.4,443.5,344.8,411.9,382.9z"/>
</g>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><g stroke="#5b5" fill="none"><circle cx="16" cy="16" r="15"/><ellipse cx="16" cy="16" rx="8" ry="15"/><path d="M4 25c6,-3 18,-3 24,0m-27 -9l30 0m-27 -9c6,3 18,3 24,0m-12 -6l0 30"/></g></svg>

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 250 B

View file

@ -1,91 +1 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 479.447 479.447" style="enable-background:new 0 0 479.447 479.447;" xml:space="preserve">
<g>
<g>
<path d="M239.446,0.022c-8.594,0-17.182,0.462-25.727,1.383c-7.832,0.8-15.568,2.112-23.2,3.704
c-1.477,0.309-2.955,0.635-4.432,0.976C141.12,16.323,100.06,39.314,67.831,72.301c-2.997,3.072-5.931,6.235-8.8,9.488
c-87.06,99.948-76.612,251.548,23.337,338.608c95.688,83.349,239.723,77.803,328.719-12.656c3.003-3.072,5.936-6.235,8.8-9.488
c38.421-43.754,59.594-100.003,59.56-158.232C479.447,107.472,371.995,0.021,239.446,0.022z M78.495,84.301
c1.264-1.312,2.576-2.568,3.864-3.84c1.488-1.464,2.968-2.936,4.488-4.352c1.336-1.248,2.712-2.448,4.08-3.664
c1.544-1.368,3.08-2.736,4.664-4.056c1.392-1.176,2.824-2.304,4.248-3.44c1.6-1.28,3.2-2.56,4.848-3.792
c1.456-1.096,2.936-2.16,4.424-3.2c1.656-1.184,3.32-2.4,5.008-3.504c1.512-1.024,3.04-2.016,4.576-3
c1.712-1.096,3.432-2.176,5.168-3.2c1.563-0.933,3.136-1.851,4.72-2.752c1.771-1.008,3.549-1.992,5.336-2.952
c1.6-0.853,3.2-1.688,4.8-2.504c1.824-0.92,3.664-1.808,5.512-2.68c1.6-0.76,3.264-1.52,4.912-2.24c1.88-0.8,3.784-1.6,5.688-2.4
c1.656-0.68,3.304-1.344,4.976-1.984c1.936-0.736,3.896-1.424,5.856-2.112c1.672-0.584,3.344-1.168,5.04-1.72
c1.992-0.64,4-1.232,6.016-1.816c1.688-0.488,3.36-0.992,5.056-1.448c0.648-0.168,1.296-0.304,1.944-0.472
c-23.68,22.993-41.253,51.529-51.128,83.024c-18.988-5.008-37.37-12.082-54.816-21.096C78.039,84.821,78.263,84.541,78.495,84.301
z M66.991,97.181c19.217,10.412,39.595,18.522,60.712,24.16c-10.352,35.996-15.786,73.227-16.152,110.68h-95.92
C17.374,182.632,35.435,135.214,66.991,97.181z M66.991,382.861c-31.554-38.034-49.615-85.452-51.36-134.84h95.92
c0.366,37.453,5.799,74.684,16.152,110.68C106.587,364.341,86.209,372.45,66.991,382.861z M181.727,456.429
c-1.616-0.408-3.288-0.936-4.952-1.424c-2.024-0.592-4.056-1.184-6.056-1.832c-1.688-0.544-3.352-1.128-5.016-1.712
c-1.968-0.68-3.936-1.376-5.88-2.12c-1.664-0.632-3.304-1.296-4.952-1.968c-1.912-0.8-3.824-1.6-5.72-2.4
c-1.632-0.72-3.256-1.461-4.872-2.224c-1.864-0.88-3.72-1.776-5.6-2.704c-1.6-0.8-3.2-1.6-4.8-2.472
c-1.808-0.968-3.6-1.96-5.392-2.984c-1.6-0.888-3.12-1.8-4.664-2.728c-1.76-1.056-3.488-2.144-5.216-3.256
c-1.52-0.968-3.04-1.952-4.536-2.96c-1.704-1.152-3.392-2.352-5.064-3.552c-1.464-1.048-2.928-2.096-4.368-3.2
c-1.656-1.248-3.28-2.536-4.896-3.832c-1.416-1.128-2.824-2.248-4.208-3.408c-1.6-1.328-3.144-2.712-4.696-4.088
c-1.36-1.208-2.728-2.4-4.056-3.632c-1.528-1.424-3.008-2.904-4.496-4.368c-1.288-1.272-2.6-2.528-3.864-3.832
c-0.232-0.248-0.456-0.504-0.688-0.744c17.445-9.018,35.827-16.095,54.816-21.104c9.877,31.494,27.449,60.029,51.128,83.024
C183.031,456.741,182.375,456.605,181.727,456.429z M231.447,463.389c-34.232-4.864-64.24-40.592-83.12-93.352
c27.296-6.112,55.151-9.391,83.12-9.784V463.389z M231.447,344.253c-29.67,0.39-59.215,3.914-88.144,10.512
c-10.045-34.707-15.344-70.615-15.752-106.744h103.896V344.253z M231.447,232.021H127.551
c0.407-36.129,5.706-72.037,15.752-106.744c28.929,6.597,58.475,10.121,88.144,10.512V232.021z M231.447,119.789
c-27.97-0.39-55.824-3.669-83.12-9.784c18.88-52.76,48.888-88.488,83.12-93.352V119.789z M411.903,97.181
c31.554,38.034,49.615,85.452,51.36,134.84h-95.92c-0.366-37.453-5.799-74.684-16.152-110.68
C372.307,115.7,392.685,107.591,411.903,97.181z M297.103,23.605c1.68,0.416,3.352,0.944,5.016,1.432
c2.024,0.592,4.056,1.184,6.056,1.832c1.688,0.544,3.352,1.128,5.016,1.712c1.968,0.68,3.936,1.376,5.88,2.12
c1.664,0.632,3.304,1.296,4.952,1.968c1.912,0.8,3.824,1.6,5.72,2.4c1.632,0.72,3.256,1.461,4.872,2.224
c1.864,0.88,3.72,1.776,5.6,2.704c1.6,0.8,3.2,1.6,4.8,2.472c1.808,0.968,3.6,1.96,5.392,2.984c1.6,0.888,3.12,1.8,4.664,2.728
c1.76,1.056,3.488,2.144,5.216,3.256c1.52,0.968,3.04,1.952,4.536,2.96c1.704,1.152,3.384,2.344,5.056,3.544
c1.472,1.048,2.936,2.104,4.384,3.2c1.648,1.24,3.264,2.528,4.888,3.824c1.408,1.12,2.824,2.24,4.208,3.408
c1.6,1.328,3.144,2.712,4.696,4.088c1.36,1.208,2.728,2.4,4.056,3.632c1.528,1.424,3.008,2.904,4.496,4.368
c1.288,1.272,2.6,2.528,3.864,3.832c0.232,0.248,0.456,0.504,0.688,0.744c-17.445,9.018-35.827,16.095-54.816,21.104
c-9.896-31.498-27.491-60.031-51.192-83.016C295.799,23.293,296.455,23.429,297.103,23.605z M247.447,16.653
c34.232,4.864,64.24,40.592,83.12,93.352c-27.296,6.112-55.151,9.391-83.12,9.784V16.653z M247.447,135.789
c29.67-0.39,59.215-3.914,88.144-10.512c10.045,34.707,15.344,70.615,15.752,106.744H247.447V135.789z M247.447,248.021h103.896
c-0.407,36.129-5.706,72.037-15.752,106.744h0c-28.929-6.597-58.474-10.121-88.144-10.512V248.021z M247.447,463.389V360.253
c27.97,0.39,55.824,3.669,83.12,9.784C311.687,422.797,281.679,458.525,247.447,463.389z M400.399,395.741
c-1.264,1.304-2.568,2.56-3.856,3.832c-1.488,1.464-2.976,2.944-4.504,4.368c-1.328,1.24-2.696,2.4-4.056,3.64
c-1.552,1.376-3.096,2.752-4.68,4.08c-1.4,1.168-2.824,2.296-4.248,3.432c-1.6,1.28-3.2,2.56-4.848,3.792
c-1.456,1.096-2.936,2.16-4.424,3.2c-1.656,1.184-3.32,2.4-5.008,3.504c-1.512,1.024-3.04,2.016-4.576,2.992
c-1.712,1.104-3.437,2.171-5.176,3.2c-1.6,0.936-3.128,1.848-4.704,2.752c-1.771,1.008-3.552,1.992-5.344,2.952
c-1.6,0.853-3.2,1.688-4.8,2.504c-1.824,0.92-3.664,1.808-5.512,2.68c-1.6,0.76-3.264,1.52-4.912,2.24
c-1.88,0.8-3.784,1.6-5.688,2.4c-1.656,0.672-3.304,1.344-4.968,1.976c-1.952,0.744-3.912,1.44-5.88,2.12
c-1.664,0.584-3.328,1.168-5.016,1.712c-2,0.648-4,1.24-6.04,1.824c-1.672,0.496-3.352,0.992-5.04,1.448
c-0.648,0.168-1.296,0.304-1.944,0.472c23.68-22.993,41.253-51.529,51.128-83.024c18.988,5.008,37.37,12.082,54.816,21.096
C400.855,395.221,400.631,395.501,400.399,395.741z M411.903,382.861c-19.217-10.412-39.595-18.522-60.712-24.16
c10.352-35.996,15.786-73.227,16.152-110.68h95.92C461.521,297.409,443.459,344.828,411.903,382.861z"/>
</g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><g stroke="#000" fill="none"><circle cx="16" cy="16" r="15"/><ellipse cx="16" cy="16" rx="8" ry="15"/><path d="M4 25c6,-3 18,-3 24,0m-27 -9l30 0m-27 -9c6,3 18,3 24,0m-12 -6l0 30"/></g></svg>

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 250 B

View file

@ -1 +1 @@
<svg id="Capa_1" enable-background="new 0 0 512 512" height="512" viewBox="0 0 512 512" width="512" xmlns="http://www.w3.org/2000/svg"><g><path d="m484.446 333.955h-31.01l-8.34-252.834c-.381-11.538-9.721-20.575-21.264-20.575-11.544 0-20.885 9.038-21.265 20.575l-8.34 252.834h-54.384c-4.151 0-7.515 3.365-7.515 7.515s3.364 7.515 7.515 7.515h144.602c6.906 0 12.524 5.618 12.524 12.524v62.391c0 6.906-5.618 12.525-12.524 12.525h-315.47c-4.151 0-7.515 3.364-7.515 7.515s3.364 7.515 7.515 7.515h315.472c15.193 0 27.554-12.361 27.554-27.554v-62.391c-.001-15.194-12.362-27.555-27.555-27.555zm-66.857-252.339c.112-3.387 2.854-6.041 6.244-6.041 3.389 0 6.131 2.654 6.243 6.041l8.323 252.339h-29.133z"/><path d="m138.916 436.425h-111.362c-6.906 0-12.524-5.618-12.524-12.525v-62.391c0-6.906 5.618-12.524 12.524-12.524h282.232c4.151 0 7.515-3.364 7.515-7.515 0-4.15-3.364-7.515-7.515-7.515h-192.008l-8.34-252.834c-.381-11.538-9.721-20.575-21.264-20.575-11.544 0-20.885 9.038-21.265 20.575l-3.795 115.049c-.137 4.148 3.115 7.621 7.263 7.758 4.126.106 7.621-3.115 7.758-7.263l3.795-115.049c.112-3.387 2.854-6.041 6.244-6.041 3.389 0 6.131 2.654 6.243 6.041l8.323 252.339h-29.133l3.537-107.254c.137-4.148-3.115-7.621-7.263-7.758-4.143-.131-7.622 3.115-7.758 7.263l-3.554 107.749h-31.015c-15.193 0-27.554 12.361-27.554 27.554v62.391c0 15.193 12.361 27.554 27.554 27.554h111.362c4.151 0 7.515-3.365 7.515-7.515s-3.365-7.514-7.515-7.514z"/><path d="m58.241 401.189c-4.151 0-7.515 3.365-7.515 7.515s3.364 7.515 7.515 7.515h24.006c4.151 0 7.515-3.365 7.515-7.515s-3.364-7.515-7.515-7.515z"/><path d="m138.916 401.189h-24.007c-4.151 0-7.515 3.365-7.515 7.515s3.364 7.515 7.515 7.515h24.007c4.151 0 7.515-3.365 7.515-7.515-.001-4.151-3.365-7.515-7.515-7.515z"/><path d="m171.578 401.189c-4.151 0-7.515 3.365-7.515 7.515s3.364 7.515 7.515 7.515h24.006c4.151 0 7.515-3.365 7.515-7.515s-3.364-7.515-7.515-7.515z"/><path d="m228.248 401.189c-4.151 0-7.515 3.365-7.515 7.515s3.364 7.515 7.515 7.515h24.006c4.151 0 7.515-3.365 7.515-7.515s-3.364-7.515-7.515-7.515z"/><path d="m398.135 416.218c4.151 0 7.515-3.365 7.515-7.515s-3.364-7.515-7.515-7.515h-24.006c-4.151 0-7.515 3.365-7.515 7.515s3.364 7.515 7.515 7.515z"/><path d="m454.032 416.218c4.151 0 7.515-3.365 7.515-7.515s-3.364-7.515-7.515-7.515h-24.006c-4.151 0-7.515 3.365-7.515 7.515s3.364 7.515 7.515 7.515z"/><path d="m164.005 184.136c50.728-50.73 133.271-50.728 183.999 0 1.468 1.467 3.391 2.201 5.314 2.201s3.846-.734 5.314-2.201c2.934-2.934 2.934-7.693 0-10.627-56.589-56.589-148.666-56.59-205.255 0-2.934 2.934-2.934 7.693 0 10.627 2.935 2.935 7.693 2.935 10.628 0z"/><path d="m330.129 212.639c2.934-2.935 2.934-7.693 0-10.627-40.831-40.83-107.242-40.871-148.125-.125-2.328 2.218-3.047 5.775-1.534 8.801 1.316 2.633 3.971 4.156 6.727 4.156 1.129 0 2.276-.255 3.355-.795.75-.375 1.419-.865 1.989-1.444 35.017-34.98 91.959-34.966 126.96.034 2.935 2.934 7.693 2.934 10.628 0z"/><path d="m296.847 242.807c1.923 0 3.846-.734 5.314-2.201 2.934-2.934 2.934-7.693 0-10.627-12.329-12.329-28.721-19.119-46.158-19.119-17.435 0-33.828 6.79-46.158 19.119-2.935 2.934-2.935 7.693 0 10.627 2.934 2.935 7.692 2.935 10.628 0 9.49-9.49 22.109-14.717 35.529-14.717 13.422 0 26.039 5.227 35.529 14.717 1.47 1.468 3.393 2.201 5.316 2.201z"/><path d="m234.347 254.425c-1.422 1.407-2.23 3.33-2.23 5.343-.093 6.659 8.347 10.031 12.872 5.27 2.948-2.927 6.858-4.539 11.015-4.539 4.177 0 8.104 1.627 11.057 4.58 7.28 6.791 17.417-3.354 10.628-10.627-11.949-11.949-31.383-11.957-43.342-.027z"/></g></svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path stroke="#000" fill="none" d="M6 22l-4 0c-1,0 -1,1 -1,1l0 4c0,1 1,1 1,1l28 0c1,0 1,-1 1,-1l0 -4c0,-1 -1,-1 -1,-1l-24 0 -2 -18c-0.2,-2 -2.2,-2 -2,0l2 18m22 0l2 -18c0.2,-2 2.2,-2 2,0l-2 18m-2 4l2 0m-5 0l2 0m-12 0l2 0m-5 0l2 0m-5 0l2 0m-5 0l2 0"/></svg>

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 315 B

View file

@ -1,61 +1 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 490.584 490.584" style="enable-background:new 0 0 490.584 490.584;" xml:space="preserve">
<g>
<g>
<path d="M0,127.994l10.448,12.12c135.299-115.396,334.389-115.396,469.688,0l10.448-12.12C349.265,7.465,141.319,7.465,0,127.994z
"/>
</g>
</g>
<g>
<g>
<path d="M58.608,226.322l11.312,11.312c96.911-96.697,253.808-96.697,350.72,0l11.312-11.312
C328.793,123.379,161.768,123.379,58.608,226.322z"/>
</g>
</g>
<g>
<g>
<path d="M137.8,305.514l11.312,11.312c53.148-53.025,139.188-53.025,192.336,0l11.312-11.312
C293.36,246.252,197.2,246.252,137.8,305.514z"/>
</g>
</g>
<g>
<g>
<path d="M273.568,384.706c-15.636-15.591-40.94-15.591-56.576,0c-15.619,15.623-15.616,40.95,0.007,56.569
c15.623,15.619,40.95,15.616,56.569-0.007C289.184,425.647,289.184,400.326,273.568,384.706z M262.256,429.97
c-9.376,9.37-24.572,9.365-33.941-0.011c-9.37-9.376-9.365-24.572,0.011-33.941c9.371-9.365,24.559-9.365,33.93,0
C271.609,405.403,271.609,420.585,262.256,429.97z"/>
</g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
<g>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path stroke="#000" fill="none" d="M4 15l-3 -3c8.4,-8.3 21.6,-8.3 30,0l-3 3c-6.6,-6.6 -17.4,-6.6 -24,0zm6 6l-3 -3c5,-5 13,-5 18,0l-3 3c-3.3,-3.3 -8.7,-3.3 -12,0zm6 6l-3 -3c1.6,-1.7 4.4,-1.7 6,0l-3 3z"/></svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 268 B

View file

@ -208,6 +208,7 @@ return baseclass.extend({
}
},
renderUpdateOpenMPTCProuterData: function(data, v6) {
if (data.openmptcprouter != undefined) {
if (data.openmptcprouter.wan_addr != '') this.params.omrvps.internet.v4.connected.value = true;
if (data.openmptcprouter.wan_addr) this.params.omrvps.internet.v4.addrsv4.value = data.openmptcprouter.wan_addr || [ '-'];
if (data.openmptcprouter.wan_addr6) this.params.omrvps.internet.v6.addrsv6.value = data.openmptcprouter.wan_addr6 || [ '-'];
@ -218,6 +219,7 @@ return baseclass.extend({
if (data.openmptcprouter.vpn_traffic) this.params.omrvps.vps.trafficvpn.value = this.formatBytes(data.openmptcprouter.vpn_traffic) || [ '-'];
if (data.openmptcprouter.total_traffic) this.params.omrvps.vps.traffictotal.value = this.formatBytes(data.openmptcprouter.total_traffic) || [ '-'];
if (data.openmptcprouter.ipv6 != 'disabled') this.params.omrvps.internet.v6.connected.value = true;
}
},
renderInternetBox: function(data) {

View file

@ -70,11 +70,13 @@ return baseclass.extend({
]));
}
if (this.params.lan.devices.length > 0) {
container_box.appendChild(E('hr'));
container_box.appendChild(container_devices);
container_box.appendChild(E('hr'));
container_box.appendChild(container_deviceslist);
container_wapper.appendChild(container_box);
}
return container_wapper;
},

View file

@ -130,11 +130,13 @@ return baseclass.extend({
container_devices_list.appendChild(container_devices_item);
}
if (this.params.wifi.devices.length > 0) {
container_devices.appendChild(container_devices_list);
container_box.appendChild(E('hr'));
container_box.appendChild(container_devices);
container_box.appendChild(container_devices_list);
container_wapper.appendChild(container_box);
}
return container_wapper;
},

View file

@ -141,7 +141,7 @@ interface_multipath_settings() {
config_get netmask $config netmask
[ -n "$ipaddr" ] && [ -n "$netmask" ] && netmask=`ipcalc.sh $ipaddr $netmask | sed -n '/PREFIX=/{;s/.*=//;s/ .*//;p;}'`
[ -n "$îpaddr" ] && [ -n "$netmask" ] && network=`ipcalc.sh $ipaddr $netmask | sed -n '/NETWORK=/{;s/.*=//;s/ .*//;p;}'`
else
elif [ "$proto" != "gre" ]; then
network_get_ipaddr ipaddr $config
[ -z "$ipaddr" ] && ipaddr=$(ip -4 addr show dev $iface | grep inet | awk '{print $2}' | cut -d/ -f1 | tr -d "\n")
network_get_gateway gateway $config true

View file

@ -9,6 +9,7 @@ set_route() {
[ -z "$SETDEFAULT" ] && SETDEFAULT="yes"
multipath_config_route=$(uci -q get openmptcprouter.$INTERFACE.multipath)
[ -z "$multipath_config_route" ] && multipath_config_route=$(uci -q get network.$INTERFACE.multipath || echo "off")
[ "$(uci -q get openmptcprouter.$INTERFACE.multipathvpn)" = "1" ] && multipath_config_route="$(uci -q get openmptcprouter.ovpn${INTERFACE}.multipath || echo "off")"
interface_if=$(ifstatus "$INTERFACE" 2>/dev/null | jsonfilter -q -e '@["l3_device"]')
interface_up=$(ifstatus "$INTERFACE" 2>/dev/null | jsonfilter -q -e '@["up"]')
[ -z "$interface_if" ] && interface_if=$(ifstatus "${INTERFACE}_4" 2>/dev/null | jsonfilter -q -e '@["l3_device"]')
@ -42,6 +43,7 @@ set_server_default_route() {
[ "$disabled" = "1" ] && return
multipath_config_route=$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.multipath)
[ -z "$multipath_config_route" ] && multipath_config_route=$(uci -q get network.$OMR_TRACKER_INTERFACE.multipath || echo "off")
[ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.multipathvpn)" = "1" ] && multipath_config_route="$(uci -q get openmptcprouter.ovpn${OMR_TRACKER_INTERFACE}.multipath || echo "off")"
if [ "$serverip" != "" ] && [ "$OMR_TRACKER_DEVICE_GATEWAY" != "" ] && [ "$(ip route show dev $OMR_TRACKER_DEVICE metric 1 | grep $serverip | grep $OMR_TRACKER_DEVICE_GATEWAY)" = "" ] && [ "$multipath_config_route" != "off" ]; then
_log "Set server $server ($serverip) default route via $OMR_TRACKER_DEVICE_GATEWAY"
if [ "$(ip r show $serverip | grep nexthop)" != "" ]; then
@ -69,6 +71,7 @@ set_routes_intf() {
local INTERFACE=$1
multipath_config_route=$(uci -q get openmptcprouter.$INTERFACE.multipath)
[ -z "$multipath_config_route" ] && multipath_config_route=$(uci -q get network.$INTERFACE.multipath || echo "off")
[ "$(uci -q get openmptcprouter.$INTERFACE.multipathvpn)" = "1" ] && multipath_config_route="$(uci -q get openmptcprouter.ovpn${INTERFACE}.multipath || echo 'off')"
interface_if=$(ifstatus "$INTERFACE" 2>/dev/null | jsonfilter -q -e '@["l3_device"]')
[ -z "$interface_if" ] && interface_if=$(ifstatus "${INTERFACE}_4" 2>/dev/null | jsonfilter -q -e '@["l3_device"]')
[ -z "$interface_if" ] && interface_if=$(uci -q get network.$INTERFACE.ifname)
@ -117,6 +120,7 @@ set_route_balancing() {
INTERFACE=$1
multipath_config_route=$(uci -q get openmptcprouter.$INTERFACE.multipath)
[ -z "$multipath_config_route" ] && multipath_config_route=$(uci -q get network.$INTERFACE.multipath || echo "off")
[ "$(uci -q get openmptcprouter.$INTERFACE.multipathvpn)" = "1" ] && multipath_config_route="$(uci -q get openmptcprouter.ovpn${INTERFACE}.multipath || echo 'off')"
interface_if=$(ifstatus "$INTERFACE" 2>/dev/null | jsonfilter -q -e '@["l3_device"]')
[ -z "$interface_if" ] && interface_if=$(ifstatus "${INTERFACE}_4" 2>/dev/null | jsonfilter -q -e '@["l3_device"]')
[ -z "$interface_if" ] && interface_if=$(uci -q get network.$INTERFACE.ifname)
@ -166,6 +170,8 @@ set_server_all_routes() {
[ -z "$interface_if" ] && interface_if=$(ifstatus "${OMR_TRACKER_INTERFACE}_4" 2>/dev/null | jsonfilter -q -e '@["l3_device"]')
interface_up=$(ifstatus "$OMR_TRACKER_INTERFACE" 2>/dev/null | jsonfilter -q -e '@["up"]')
multipath_config_route=$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.multipath || echo "off")
[ "$multipath_config_route" ] && multipath_config_route=$(uci -q get network.$OMR_TRACKER_INTERFACE.multipath || echo 'off')
[ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.multipathvpn)" = "1" ] && multipath_config_route="$(uci -q get openmptcprouter.ovpn${OMR_TRACKER_INTERFACE}.multipath || echo "off")"
if [ "$serverip" != "" ] && [ "$OMR_TRACKER_DEVICE_GATEWAY" != "" ] && [ "$multipath_config_route" != "off" ] && [ "$interface_up" = "true" ]; then
routesintf=""
routesintfbackup=""
@ -203,6 +209,7 @@ set_server_route() {
[ -z "$metric" ] && metric=$(uci -q get network.$OMR_TRACKER_INTERFACE.metric)
multipath_config_route=$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.multipath)
[ "$multipath_config_route" ] && multipath_config_route=$(uci -q get network.$OMR_TRACKER_INTERFACE.multipath || echo "off")
[ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.multipathvpn)" = "1" ] && multipath_config_route="$(uci -q get openmptcprouter.ovpn${OMR_TRACKER_INTERFACE}.multipath || echo "off")"
interface_if=$(uci -q get network.$OMR_TRACKER_INTERFACE.ifname)
[ -z "$interface_if" ] && interface_if=$(ifstatus "$OMR_TRACKER_INTERFACE" 2>/dev/null | jsonfilter -q -e '@["l3_device"]')
[ -z "$interface_if" ] && interface_if=$(ifstatus "${OMR_TRACKER_INTERFACE}_4" 2>/dev/null | jsonfilter -q -e '@["l3_device"]')
@ -238,7 +245,7 @@ del_server_route() {
disable_pihole() {
local server=$1
if [ "$(uci -q get openmptcprouter.${server}.pihole)" = "0" ] && [ -n "$(uci -q get dhcp.@dnsmasq[0].server | grep '#53' | grep '10.2')" ]; then
if [ -n "$(uci -q get dhcp.@dnsmasq[0].server | grep '#53' | grep '10.2')" ]; then
_log "Disable Pi-Hole..."
uci -q del_list dhcp.@dnsmasq[0].server="$(uci -q get dhcp.@dnsmasq[0].server | tr ' ' '\n' | grep '#53' | grep '10.2')"
uci -q batch <<-EOF >/dev/null
@ -298,7 +305,7 @@ if [ "$OMR_TRACKER_STATUS" = "ERROR" ] || [ "$interface_up" != "true" ]; then
if [ "$OMR_TRACKER_PREV_STATUS" = "$OMR_TRACKER_STATUS" ]; then
exit 0
fi
[ "$multipath_status" = "off" ] || {
[ "$multipath_status" = "off" ] && [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.multipathvpn)" != "1" ] || {
if [ "$OMR_TRACKER_STATUS_MSG" = "" ]; then
_log "$OMR_TRACKER_INTERFACE ($OMR_TRACKER_DEVICE) switched off"
else
@ -309,7 +316,7 @@ if [ "$OMR_TRACKER_STATUS" = "ERROR" ] || [ "$interface_up" != "true" ]; then
# multipath "$OMR_TRACKER_DEVICE" off > /dev/null 2>&1
#fi
if [ -n "$OMR_TRACKER_DEVICE_IP" ]; then
glorytun-udp path $OMR_TRACKER_DEVICE_IP dev tun0 down > /dev/null 2>&1
glorytun-udp path $OMR_TRACKER_DEVICE_IP dev tun0 set down > /dev/null 2>&1
fi
if [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.vpn)" = "1" ]; then
VPN_BASE_INTF="$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.baseintf)"
@ -376,6 +383,10 @@ if [ "$OMR_TRACKER_STATUS" = "ERROR" ] || [ "$interface_up" != "true" ]; then
if [ "$(uci -q get mlvpn.general.enable)" = "1" ]; then
/etc/init.d/mlvpn restart
fi
if [ "$(uci -q get glorytun.vpn.enable)" = "1" ]; then
/etc/init.d/glorytun restart
/etc/init.d/glorytun-udp restart
fi
config_load openmptcprouter
config_foreach disable_pihole server
#if [ "$(uci -q get openmptcprouter.settings.master)" != "balancing" ] || [ "$(uci -q get openmptcprouter.settings.vpn)" = "mlvpn" ]; then
@ -486,6 +497,7 @@ fi
multipath_config=$(uci -q get "openmtpcprouter.$OMR_TRACKER_INTERFACE.multipath")
[ -z "$multipath_config" ] && multipath_config=$(uci -q get "network.$OMR_TRACKER_INTERFACE.multipath" || echo "off")
[ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.multipathvpn)" = "1" ] && multipath_config="$(uci -q get openmptcprouter.ovpn${OMR_TRACKER_INTERFACE}.multipath || echo "off")"
if [ "$multipath_config" = "master" ]; then
#if ([ "$default_gw" != "$OMR_TRACKER_DEVICE_GATEWAY" ] || [ "$default_gw" = "" ]) && [ "$OMR_TRACKER_DEVICE_GATEWAY" != "" ] && ([ "$(uci -q get openmptcprouter.settings.master)" != "balancing" ] || [ "$(uci -q get openmptcprouter.settings.vpn)" = "mlvpn" ]); then
if ([ "$default_gw" != "$OMR_TRACKER_DEVICE_GATEWAY" ] || [ "$default_gw" = "" ]) && [ "$OMR_TRACKER_DEVICE_GATEWAY" != "" ] && [ "$(uci -q get openmptcprouter.settings.master)" != "balancing" ]; then
@ -547,28 +559,48 @@ fi
[ -z "$download" ] && download="$(uci -q get sqm.$OMR_TRACKER_INTERFACE.download)"
upload="$(uci -q get network.$OMR_TRACKER_INTERFACE.uploadspeed)"
[ -z "$upload" ] && upload="$(uci -q get sqm.$OMR_TRACKER_INTERFACE.upload)"
if [ "$(pgrep glorytun-udp)" != "" ] && ([ "$(glorytun-udp path | grep $OMR_TRACKER_DEVICE_IP)" = "" ] || [ "$(glorytun-udp path $OMR_TRACKER_DEVICE_IP | awk '{print $13}')" = "0" ] || [ "$(glorytun-udp path $OMR_TRACKER_DEVICE_IP | awk '{print $16}')" = "0" ]); then
if [ "$(uci show | grep mptcpr)" = "" ]; then
touch /etc/config/openmptcprouter
fi
if [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.vpn)" != "1" ] && [ "$(pgrep glorytun-udp)" != "" ] && ([ "$(glorytun-udp path | grep $OMR_TRACKER_DEVICE_IP)" = "" ] || [ "$(glorytun-udp path $OMR_TRACKER_DEVICE_IP | awk '{print $13}')" = "0" ] || [ "$(glorytun-udp path $OMR_TRACKER_DEVICE_IP | awk '{print $16}')" = "0" ]); then
if [ "$download" != "0" ] && [ "$download" != "" ] && [ "$upload" != "0" ] && [ "$upload" != "" ]; then
if [ "$(uci -q get glorytun.vpn.rateauto)" = "1" ]; then
glorytun-udp path $OMR_TRACKER_DEVICE_IP dev tun0 up rate auto tx ${upload}000 rx ${download}000 > /dev/null 2>&1
glorytun-udp path $OMR_TRACKER_DEVICE_IP dev tun0 set up rate auto tx $((upload*1000/8)) rx $((download*1000/8)) > /dev/null 2>&1
else
glorytun-udp path $OMR_TRACKER_DEVICE_IP dev tun0 up rate tx ${upload}000 rx ${download}000 > /dev/null 2>&1
glorytun-udp path $OMR_TRACKER_DEVICE_IP dev tun0 set up rate fixed tx $((upload*1000/8)) rx $((download*1000/8)) > /dev/null 2>&1
fi
else
if [ "$(uci -q get glorytun.vpn.rateauto)" = "1" ]; then
glorytun-udp path $OMR_TRACKER_DEVICE_IP dev tun0 up rate auto tx 125000000 rx 125000000 > /dev/null 2>&1
glorytun-udp path $OMR_TRACKER_DEVICE_IP dev tun0 set up rate auto tx 12500000 rx 12500000 > /dev/null 2>&1
else
glorytun-udp path $OMR_TRACKER_DEVICE_IP dev tun0 up rate tx 125000000 rx 125000000 > /dev/null 2>&1
glorytun-udp path $OMR_TRACKER_DEVICE_IP dev tun0 set up rate fixed tx 12500000 rx 12500000 > /dev/null 2>&1
fi
fi
fi
# if [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.vpn)" = "1" ] && [ "$(pgrep glorytun-udp)" != "" ] && ([ "$(glorytun-udp path | grep $OMR_TRACKER_DEVICE_IP)" = "" ] || [ "$(glorytun-udp path $OMR_TRACKER_DEVICE_IP | awk '{print $13}')" = "0" ] || [ "$(glorytun-udp path $OMR_TRACKER_DEVICE_IP | awk '{print $16}')" = "0" ]); then
# if [ "$download" != "0" ] && [ "$download" != "" ] && [ "$upload" != "0" ] && [ "$upload" != "" ]; then
# if [ "$(uci -q get glorytun.vpn.rateauto)" = "1" ]; then
# glorytun-udp path $OMR_TRACKER_DEVICE_IP to 10.255.250.1 $(uci -q get glorytun.vpn.port) dev tun0 set up rate auto tx ${upload}000 rx ${download}000 > /dev/null 2>&1
# else
# glorytun-udp path $OMR_TRACKER_DEVICE_IP to 10.255.250.1 $(uci -q get glorytun.vpn.port) dev tun0 set up rate fixed tx ${upload}000 rx ${download}000 > /dev/null 2>&1
# fi
# else
# if [ "$(uci -q get glorytun.vpn.rateauto)" = "1" ]; then
# glorytun-udp path $OMR_TRACKER_DEVICE_IP to 10.255.250.1 $(uci -q get glorytun.vpn.port) dev tun0 set up rate auto tx 125000000 rx 125000000 > /dev/null 2>&1
# else
# glorytun-udp path $OMR_TRACKER_DEVICE_IP to 10.255.250.1 $(uci -q get glorytun.vpn.port) dev tun0 set up rate fixed tx 125000000 rx 125000000 > /dev/null 2>&1
# fi
# fi
# fi
}
[ "$multipath_config" = "backup" ] && [ "$(pgrep glorytun-udp)" != "" ] && glorytun-udp path $OMR_TRACKER_DEVICE_IP dev tun0 backup rate auto rx 125000000 tx 125000000 > /dev/null 2>&1
[ "$multipath_status" = "$multipath_config" ] || {
[ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.multipathvpn)" != "1" ] && [ "$multipath_config" = "backup" ] && [ "$(pgrep glorytun-udp)" != "" ] && glorytun-udp path $OMR_TRACKER_DEVICE_IP dev tun0 set backup rate auto rx 125000000 tx 125000000 > /dev/null 2>&1
[ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.multipathvpn)" != "1" ] && {
[ "$multipath_status" = "$multipath_config" ] || {
if [ "$(sysctl -n net.mptcp.mptcp_enabled | tr -d '\n')" = "1" ]; then
_log "Multipath $OMR_TRACKER_DEVICE switched to $multipath_config"
multipath "$OMR_TRACKER_DEVICE" "$multipath_config"
fi
}
}
#ubus call network reload
@ -615,7 +647,7 @@ if [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.lc)" = "" ] || [ $(($(
uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE=interface
}
if [ "$(uci -q get openmptcprouter.latest_versions.lc)" = "" ] || [ $(($(date +"%s") - $(uci -q get openmptcprouter.latest_versions.lc))) -gt 3600 ]; then
local latestversions="$(wget -4 -qO- -T 3 http://www.openmptcprouter.com/version/version.json)"
local latestversions="$(curl -4 -s -m 3 https://www.openmptcprouter.com/version/version.json)"
[ -n "$latestversions" ] && {
uci -q set openmptcprouter.latest_versions=latest_versions
uci -q set openmptcprouter.latest_versions.omr=$(echo $latestversions | jsonfilter -q -e '@.omr')
@ -741,6 +773,11 @@ if [ "$(pgrep glorytun)" = "" ] && [ "$(uci -q get glorytun.vpn.enable)" = "1" ]
sleep 5
fi
if [ "$(pgrep unbound)" = "" ] && [ -f /etc/init.d/unbound ] && [ "$(uci -q get unbound.@unbound[0].enabled)" = "1" ]; then
/etc/init.d/unbound restart
sleep 5
fi
if [ "$(pgrep openvpn)" = "" ] && [ -f /etc/init.d/openvpn ]; then
openvpn_enable=0
openvpn_enabled() {

View file

@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=ndpi-netfilter2
PKG_RELEASE:=2
PKG_REV:=aab617c0bd8ea7501ebcfa543e9fab1e92a49f77
PKG_REV:=d4924d528018d784d6da045c787b3420bbf7ce65
PKG_VERSION:=3.2-$(PKG_REV)
PKG_SOURCE_PROTO:=git

View file

@ -53,7 +53,7 @@ _launch_tracker() {
config_get ifenabled "$1" auto
config_get gateway "$1" gateway
[ -z "$ifname" ] || [ -z "$multipath" ] || [ "$multipath" = "off" ] && [ "$1" != "glorytun" ] && [ "$1" != "omrvpn" ] && return
[ -z "$ifname" ] || [ -z "$multipath" ] || [ "$multipath" = "off" ] && [ "$1" != "glorytun" ] && [ "$1" != "omrvpn" ] && [ "$( uci -q get openmptcprouter.$1.multipathvpn)" != "1" ] && return
[ "${ifenabled}" = "0" ] && return
[ "${enabled}" = "0" ] && return
[ -z "${hosts}" ] && [ "$type" != "none" ] && return

View file

@ -0,0 +1,35 @@
#!/bin/sh
INTERFACE="$1"
echo "Download server list..."
wget -q -O /tmp/speedtest.lst http://c.speedtest.net/speedtest-servers-static.php
bestuploadurl=""
besthost=""
bestpinghost=""
bestping="999"
echo "Select best server..."
while read line; do
if [ "$(echo $line | grep url)" != "" ]; then
pinghost=$(echo $line | awk -F'"' '{print $18}' | cut -d: -f1)
host=$(echo $line | awk -F'"' '{print $18}')
uploadurl=$(echo $line | awk -F'"' '{print $2}')
ping=$(ping -c1 -w1 $pinghost | cut -d "/" -s -f5 | cut -d "." -f1)
echo -n "."
if [ -n "$ping" ] && [ "$ping" -lt "$bestping" ]; then
bestping=$ping
bestuploadurl=$uploadurl
besthost=$host
bestpinghost=$pinghost
fi
fi
done < /tmp/speedtest.lst
echo
echo "Done: url: $bestuploadurl - host: $besthost - ping: $bestping"
echo "Download test:"
if [ -z "$INTERFACE" ]; then
curl -4 $besthost/speedtest/random7000x7000.jpg >/dev/null || echo
else
hostip=$(dig +short $bestpinghost | tr -d "\n")
ipset add ss_rules_dst_bypass_all $hostip
curl -4 --interface $INTERFACE $besthost/speedtest/random7000x7000.jpg >/dev/null || echo
ipset del ss_rules_dst_bypass_all $hostip
fi

View file

@ -1,15 +1,34 @@
#!/bin/sh
# vim: set noexpandtab tabstop=4 shiftwidth=4 softtabstop=4 :
INTERFACE="$1"
HOST="proof.ovh.net"
echo "Select best test server..."
HOSTLST="http://speedtest.frankfurt.linode.com/garbage.php?ckSize=10000 http://speedtest.tokyo2.linode.com/garbage.php?ckSize=10000 http://speedtest.singapore.linode.com/garbage.php?ckSize=10000 http://speedtest.newark.linode.com/garbage.php?ckSize=10000 http://speedtest.atlanta.linode.com/garbage.php?ckSize=10000 http://speedtest.dallas.linode.com/garbage.php?ckSize=10000 http://speedtest.fremont.linode.com/garbage.php?ckSize=10000 http://speedtest.tele2.net/1000GB.zip http://www.ovh.net/files/10Gb.dat https://speed.hetzner.de/10GB.bin http://ipv4.bouygues.testdebit.info/10G.iso http://par.download.datapacket.com/10000mb.bin http://nyc.download.datapacket.com/10000mb.bin http://ams.download.datapacket.com/10000mb.bin http://fra.download.datapacket.com/10000mb.bin http://lon.download.datapacket.com/10000mb.bin http://mad.download.datapacket.com/10000mb.bin http://prg.download.datapacket.com/10000mb.bin http://sto.download.datapacket.com/10000mb.bin http://vie.download.datapacket.com/10000mb.bin http://war.download.datapacket.com/10000mb.bin http://atl.download.datapacket.com/10000mb.bin http://chi.download.datapacket.com/10000mb.bin http://lax.download.datapacket.com/10000mb.bin http://mia.download.datapacket.com/10000mb.bin http://nyc.download.datapacket.com/10000mb.bin"
bestping="999"
for pinghost in $HOSTLST; do
domain=$(echo $pinghost | awk -F/ '{print $3}')
if [ -z "$INTERFACE" ]; then
ping=$(ping -c1 -w2 $domain | cut -d "/" -s -f5 | cut -d "." -f1)
else
ping=$(ping -c1 -w2 -I $INTERFACE -B $domain | cut -d "/" -s -f5 | cut -d "." -f1)
fi
echo "host: $domain - ping: $ping"
if [ -n "$ping" ] && [ "$ping" -lt "$bestping" ]; then
bestping=$ping
HOST=$pinghost
fi
done
[ -z "$HOST" ] && HOST="http://proof.ovh.net/files/10Gio.dat"
echo "Best server is $HOST, running test:"
trap : HUP INT TERM
if [ -z "$INTERFACE" ]; then
curl -4 http://$HOST/files/10Gio.dat >/dev/null || echo
curl -4 $HOST >/dev/null || echo
else
hostip=$(dig +short A $HOST | tr -d "\n")
domain=$(echo $HOST | awk -F/ '{print $3}')
hostip=$(dig +short A $domain | tr -d "\n")
ipset add ss_rules_dst_bypass_all $hostip
curl -4 --interface $INTERFACE http://$HOST/files/10Gio.dat >/dev/null || echo
curl -4 $HOST >/dev/null || echo
ipset del ss_rules_dst_bypass_all $hostip
fi

View file

@ -21,7 +21,7 @@ mptcp_over_vpn() {
logger -t "MPTCPoverVPN" "Enable MPTCP over VPN for ${interface}"
id=$(uci -q get network.${interface}.metric)
remoteip=""
config_load_openmptcprouter
config_load openmptcprouter
config_foreach _getremoteip server
localip=$(ubus call network.interface.$interface status | jsonfilter -e '@["ipv4-address"][0].address' | tr -d "\n")
[ -z "$(uci -q get openmptcprouter.ovpn${interface}.multipath)" ] && multipath=$(uci -q get network.${interface}.multipath)
@ -64,6 +64,13 @@ mptcp_over_vpn() {
add_list firewall.zone_vpn.network="ovpn${interface}"
commit firewall
EOF
else
uci -q batch <<-EOF >/dev/null
set network.${interface}.multipath='off'
commit network
set openmptcprouter.${interface}.multipath="off"
commit openmptcprouter
EOF
fi
elif [ "$(uci -q get openmptcprouter.ovpn${interface})" != "" ]; then
logger -t "MPTCPoverVPN" "Disable MPTCP over VPN for ${interface}"

View file

@ -714,6 +714,8 @@ _vps_firewall_redirect_port() {
config_get family $1 family "ipv4"
config_get enabled $1 enabled "1"
config_get src_dip $1 src_dip
config_get dest_ip $1 dest_ip
config_get dest_port $1 dest_port
config_get src_ip $1 src_ip
if [ "$(echo $src_dport | cut -d'-' -f2)" -ge "65000" ]; then
logger -t "OMR-VPS" "You can't redirect ports >= 65000, they are needed by OpenMPTCProuter Server part"
@ -731,7 +733,10 @@ _vps_firewall_redirect_port() {
checkfw=$(echo "$vpsfwlist" | grep "$src_dport # OMR $username redirect router $src_dport port $protoi")
else
comment=""
[ -n "$src_dip" ] && comment=" to $src_dip"
[ -n "$src_dip" ] && {
comment=" to $src_dip"
iptables-save --counters | sed "s:-d $src_dip/32::g" | iptables-restore -w
}
[ -n "$src_ip" ] && comment=" from $src_ip"
checkfw=$(echo "$vpsfwlist" | grep "# OMR $username redirect router $src_dport port $protoi${comment}")
fi
@ -843,6 +848,7 @@ _set_vps_firewall() {
vpsfw6list=$(echo $fw6_list | jsonfilter -q -e '@.list[*]' | sed '/^[[:space:]]*$/d')
config_load firewall
config_foreach _vps_firewall_redirect_port redirect
config_foreach _vps_firewall_redirect_port rule
[ -n "$vpsfwlist" ] || [ -n "$vpsfw6list" ] && {
logger -t "OMR-VPS" "Remove old firewall rules"
_vps_firewall_close_port
@ -1326,7 +1332,7 @@ _backup_get_and_apply() {
backup_sha256sum="$(echo "$vps_backup" | jsonfilter -q -e '@.sha256sum')"
[ -n "$backup_data" ] && {
echo $backup_data | base64 -d > /tmp/backup.tar.gz
sysupgrade -t /tmp/backup.tar.gz
sysupgrade -r /tmp/backup.tar.gz
}
}