luci-app-ddns: Update to version 2.1.1-0
- adaption Makefile to changed luci.mk - description in Makefile for correct version handling - modified handling to detect and display installed version - new functions ipkg_ver_installed() and ipkg_ver_compare - correct wrong spellings - modified language template and German translation Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
This commit is contained in:
parent
52ecc90b31
commit
819a733df3
13 changed files with 230 additions and 176 deletions
|
@ -6,17 +6,32 @@
|
|||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
LUCI_TITLE:=LuCI Support for Dynamic DNS (ddns-scripts)
|
||||
LUCI_DEPENDS:=+ddns-scripts +luci-mod-admin-full
|
||||
# LuCI specific settings
|
||||
LUCI_TITLE:=LuCI Support for Dynamic DNS Client (ddns-scripts)
|
||||
LUCI_DEPENDS:=+luci-mod-admin-full +ddns-scripts
|
||||
|
||||
PKG_NAME:=luci-app-ddns
|
||||
PKG_VERSION:=2.1.0
|
||||
PKG_RELEASE:=4
|
||||
PKG_LICENSE:=Apache-2.0
|
||||
PKGARCH:=all
|
||||
|
||||
# Version == major.minor.patch
|
||||
# increase on new functionality (minor) or patches (patch)
|
||||
PKG_VERSION:=2.1.1
|
||||
|
||||
# Release == build
|
||||
# increase on changes of translation files
|
||||
PKG_RELEASE:=0
|
||||
|
||||
PKG_LICENSE:=Apache-2.0
|
||||
PKG_MAINTAINER:=Christian Schoenebeck <christian.schoenebeck@gmail.com>
|
||||
|
||||
define Package/$(PKG_NAME)/config
|
||||
# shown in make menuconfig <Help>
|
||||
help
|
||||
$(LUCI_TITLE)
|
||||
|
||||
Version : $(PKG_VERSION)-$(PKG_RELEASE)
|
||||
Maintainer: $(PKG_MAINTAINER)
|
||||
endef
|
||||
|
||||
include ../../luci.mk
|
||||
|
||||
# call BuildPackage - OpenWrt buildroot signature
|
||||
|
|
|
@ -15,19 +15,21 @@ local SYS = require "luci.sys"
|
|||
local DDNS = require "luci.tools.ddns" -- ddns multiused functions
|
||||
local UTIL = require "luci.util"
|
||||
|
||||
local luci_ddns_version = "2.1.0-4" -- luci-app-ddns / openwrt Makefile compatible version
|
||||
local ddns_scripts_min = "2.1.0-3" -- minimum version of ddns-scripts required
|
||||
DDNS_MIN = "2.1.0-2" -- minimum version of service required
|
||||
|
||||
function index()
|
||||
-- no services_ipv6 file or no dynamic_dns_lucihelper.sh
|
||||
-- do NOT start
|
||||
if not nixio.fs.access("/usr/lib/ddns/services_ipv6")
|
||||
or not nixio.fs.access("/usr/lib/ddns/dynamic_dns_lucihelper.sh") then
|
||||
local nxfs = require "nixio.fs" -- global definitions not available
|
||||
local sys = require "luci.sys" -- in function index()
|
||||
local ddns = require "luci.tools.ddns" -- ddns multiused functions
|
||||
local verinst = ddns.ipkg_ver_installed("ddns-scripts")
|
||||
local verok = ddns.ipkg_ver_compare(verinst, ">=", "2.0.0-0")
|
||||
-- do NOT start it not ddns-scripts version 2.x
|
||||
if not verok then
|
||||
return
|
||||
end
|
||||
-- no config create an empty one
|
||||
if not nixio.fs.access("/etc/config/ddns") then
|
||||
nixio.fs.writefile("/etc/config/ddns", "")
|
||||
if not nxfs.access("/etc/config/ddns") then
|
||||
nxfs.writefile("/etc/config/ddns", "")
|
||||
end
|
||||
|
||||
entry( {"admin", "services", "ddns"}, cbi("ddns/overview"), _("Dynamic DNS"), 59)
|
||||
|
@ -44,17 +46,11 @@ local function _get_status()
|
|||
local uci = UCI.cursor()
|
||||
local service = SYS.init.enabled("ddns") and 1 or 0
|
||||
local url_start = DISP.build_url("admin", "system", "startup")
|
||||
local luci_build = DDNS.ipkg_version("luci-app-ddns").version
|
||||
local ddns_act = DDNS.ipkg_version("ddns-scripts").version
|
||||
local data = {} -- Array to transfer data to javascript
|
||||
|
||||
data[#data+1] = {
|
||||
enabled = service, -- service enabled
|
||||
url_up = url_start, -- link to enable DDS (System-Startup)
|
||||
luci_ver = luci_ddns_version, -- luci-app-ddns / openwrt Makefile compatible version
|
||||
luci_build = luci_build, -- installed luci build
|
||||
script_min = ddns_scripts_min, -- minimum version of ddns-scripts needed
|
||||
script_ver = ddns_act -- installed ddns-scripts
|
||||
}
|
||||
|
||||
uci:foreach("ddns", "service", function (s)
|
||||
|
@ -63,8 +59,8 @@ local function _get_status()
|
|||
-- and enabled state
|
||||
local section = s[".name"]
|
||||
local enabled = tonumber(s["enabled"]) or 0
|
||||
local datelast = "_empty_" -- formated date of last update
|
||||
local datenext = "_empty_" -- formated date of next update
|
||||
local datelast = "_empty_" -- formatted date of last update
|
||||
local datenext = "_empty_" -- formatted date of next update
|
||||
|
||||
-- get force seconds
|
||||
local force_seconds = DDNS.calc_seconds(
|
||||
|
@ -182,7 +178,7 @@ function startstop(section, enabled)
|
|||
return
|
||||
end
|
||||
|
||||
-- read uncommited changes
|
||||
-- read uncommitted changes
|
||||
-- we don't save and commit data from other section or other options
|
||||
-- only enabled will be done
|
||||
local exec = true
|
||||
|
@ -210,9 +206,9 @@ function startstop(section, enabled)
|
|||
end
|
||||
|
||||
-- we can not execute because other
|
||||
-- uncommited changes pending, so exit here
|
||||
-- uncommitted changes pending, so exit here
|
||||
if not exec then
|
||||
HTTP.write("_uncommited_")
|
||||
HTTP.write("_uncommitted_")
|
||||
return
|
||||
end
|
||||
|
||||
|
@ -238,14 +234,3 @@ function status()
|
|||
HTTP.prepare_content("application/json")
|
||||
HTTP.write_json(data)
|
||||
end
|
||||
|
||||
-- check if installed ddns-scripts version < required version
|
||||
function update_needed()
|
||||
local sver = DDNS.ipkg_version("ddns-scripts")
|
||||
local rver = UTIL.split(ddns_scripts_min, "[%.%-]", nil, true)
|
||||
return (sver.major < (tonumber(rver[1]) or 0))
|
||||
or (sver.minor < (tonumber(rver[2]) or 0))
|
||||
or (sver.patch < (tonumber(rver[3]) or 0))
|
||||
or (sver.build < (tonumber(rver[4]) or 0))
|
||||
end
|
||||
|
||||
|
|
|
@ -22,7 +22,7 @@ has_ipv6 = DDNS.check_ipv6() -- IPv6 support
|
|||
has_ssl = DDNS.check_ssl() -- HTTPS support
|
||||
has_proxy = DDNS.check_proxy() -- Proxy support
|
||||
has_dnstcp = DDNS.check_bind_host() -- DNS TCP support
|
||||
has_force = has_ssl and has_dnstcp -- Force IP Protocoll
|
||||
has_force = has_ssl and has_dnstcp -- Force IP Protocoll
|
||||
|
||||
-- html constants -- ###########################################################
|
||||
font_red = "<font color='red'>"
|
||||
|
|
|
@ -11,7 +11,8 @@ local DDNS = require "luci.tools.ddns" -- ddns multiused functions
|
|||
has_ssl = DDNS.check_ssl() -- HTTPS support
|
||||
has_proxy = DDNS.check_proxy() -- Proxy support
|
||||
has_dnstcp = DDNS.check_bind_host() -- DNS TCP support
|
||||
need_update = CTRL.update_needed() -- correct ddns-scripts version
|
||||
-- correct ddns-scripts version
|
||||
need_update = DDNS.ipkg_ver_compare(DDNS.ipkg_ver_installed("ddns-scripts"), "<<", CTRL.DDNS_MIN)
|
||||
|
||||
-- html constants
|
||||
font_red = [[<font color="red">]]
|
||||
|
|
|
@ -14,7 +14,8 @@ show_hints = not (DDNS.check_ipv6() -- IPv6 support
|
|||
and DDNS.check_proxy() -- Proxy support
|
||||
and DDNS.check_bind_host() -- DNS TCP support
|
||||
)
|
||||
need_update = CTRL.update_needed() -- correct ddns-scripts version
|
||||
-- correct ddns-scripts version
|
||||
need_update = DDNS.ipkg_ver_compare(DDNS.ipkg_ver_installed("ddns-scripts"), "<<", CTRL.DDNS_MIN)
|
||||
|
||||
-- html constants
|
||||
font_red = [[<font color="red">]]
|
||||
|
@ -28,8 +29,17 @@ m = Map("ddns")
|
|||
-- first need to close <a> from cbi map template our <a> closed by template
|
||||
--m.title = [[</a><a href="javascript:alert(']] .. CTRL.show_versions() ..[[')">]] ..
|
||||
-- translate("Dynamic DNS")
|
||||
m.title = [[</a><a href="#" onclick="onclick_maptitle();">]] ..
|
||||
translate("Dynamic DNS")
|
||||
m.title = [[</a><a href="javascript:alert(']]
|
||||
.. translate("Version Information")
|
||||
.. [[\n\nluci-app-ddns]]
|
||||
.. [[\n\t]] .. translate("Version") .. [[:\t]] .. DDNS.ipkg_ver_installed("luci-app-ddns")
|
||||
.. [[\n\nddns-scripts ]] .. translate("required") .. [[:]]
|
||||
.. [[\n\t]] .. translate("Version") .. [[:\t]] .. CTRL.DDNS_MIN .. [[ ]] .. translate("or higher")
|
||||
.. [[\n\nddns-scripts ]] .. translate("installed") .. [[:]]
|
||||
.. [[\n\t]] .. translate("Version") .. [[:\t]] .. DDNS.ipkg_ver_installed("ddns-scripts")
|
||||
.. [[\n\n]]
|
||||
.. [[')">]]
|
||||
.. translate("Dynamic DNS")
|
||||
|
||||
m.description = translate("Dynamic DNS allows that your router can be reached with " ..
|
||||
"a fixed hostname while having a dynamically changing " ..
|
||||
|
|
|
@ -96,33 +96,29 @@ function get_pid(section)
|
|||
return pid
|
||||
end
|
||||
|
||||
-- read version information for given package if installed
|
||||
function ipkg_version(package)
|
||||
if not package then
|
||||
-- compare versions using "<=" "<" ">" ">=" "=" "<<" ">>"
|
||||
function ipkg_ver_compare(ver1, comp, ver2)
|
||||
if not ver1 or not (#ver1 > 0)
|
||||
or not ver2 or not (#ver2 > 0)
|
||||
or not comp or not (#comp > 0) then
|
||||
return nil
|
||||
end
|
||||
local info = OPKG.info(package)
|
||||
local data = {}
|
||||
local version = ""
|
||||
local i = 0
|
||||
for k, v in pairs(info) do
|
||||
if v.Package == package and v.Status.installed then
|
||||
version = v.Version
|
||||
i = i + 1
|
||||
end
|
||||
return (tonumber(SYS.call(
|
||||
[[opkg compare-versions "]] .. ver1 .. [[" "]] .. comp .. [[" "]] .. ver2 .. [["]]
|
||||
)) == 1)
|
||||
end
|
||||
|
||||
-- read version information for given package if installed
|
||||
function ipkg_ver_installed(pkg)
|
||||
if not pkg then
|
||||
return nil
|
||||
end
|
||||
if i > 1 then -- more then one valid record
|
||||
return data
|
||||
-- opkg list-installed [pkg] | cut -d " " -f 3 - return version as sting
|
||||
local ver = SYS.exec([[opkg list-installed ]] .. pkg .. [[ | cut -d " " -f 3 ]])
|
||||
if (#ver > 0) then
|
||||
return ver
|
||||
end
|
||||
local sver = UTIL.split(version, "[%.%-]", nil, true)
|
||||
data = {
|
||||
version = version,
|
||||
major = tonumber(sver[1]) or 0,
|
||||
minor = tonumber(sver[2]) or 0,
|
||||
patch = tonumber(sver[3]) or 0,
|
||||
build = tonumber(sver[4]) or 0
|
||||
}
|
||||
return data
|
||||
return nil
|
||||
end
|
||||
|
||||
-- replacement of build-in read of UCI option
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
|
||||
<!-- ++ BEGIN ++ Dynamic DNS ++ detail_lvalue.htm ++ -->
|
||||
<!-- no value header to supress next line -->
|
||||
<!-- no value header to suppress next line -->
|
||||
 
|
||||
<% if self.widget == "select" then %>
|
||||
<select class="cbi-input-select" onchange="cbi_d_update(this.id)"<%= attr("id", cbid) .. attr("name", cbid) .. ifattr(self.size, "size") %>>
|
||||
|
|
|
@ -5,5 +5,5 @@
|
|||
attr("name", cbid) .. attr("id", cbid) .. attr("value", self:cfgvalue(section) or self.default) ..
|
||||
ifattr(self.size, "size") .. ifattr(self.placeholder, "placeholder")
|
||||
%> />
|
||||
<!-- no value footer to supress next line -->
|
||||
<!-- no value footer to suppress next line -->
|
||||
<!-- ++ END ++ Dynamic DNS ++ detail_value.htm ++ -->
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
-- We need to garantie that function cfgvalue run first to set missing parameters
|
||||
%>
|
||||
<!-- style="font-size: 100%;" needed for openwrt theme to fix font size -->
|
||||
<!-- type="button" onclick="..." enable standard onclick functionalty -->
|
||||
<!-- type="button" onclick="..." enable standard onclick functionality -->
|
||||
<input class="cbi-button cbi-input-<%=self.inputstyle or "button" %>" style="font-size: 100%;" type="button" onclick="onclick_startstop(this.id)"
|
||||
<%=
|
||||
attr("name", section) .. attr("id", cbid) .. attr("value", self.inputtitle) .. ifattr(self.disabled, "disabled")
|
||||
|
|
|
@ -2,12 +2,6 @@
|
|||
<!-- ++ BEGIN ++ Dynamic DNS ++ overview_status.htm ++ -->
|
||||
<script type="text/javascript">//<![CDATA[
|
||||
|
||||
// variables to store version information
|
||||
var luci_version
|
||||
var luci_build
|
||||
var ddns_version
|
||||
var ddns_required
|
||||
|
||||
// helper to extract section from objects id
|
||||
// cbi.ddns.SECTION._xyz
|
||||
function _id2section(id) {
|
||||
|
@ -19,13 +13,6 @@
|
|||
// screen objects
|
||||
// called by XHR.poll and onclick_startstop
|
||||
function _data2elements(data) {
|
||||
// DDNS Service
|
||||
// fill Version informations
|
||||
luci_version = data[0].luci_ver
|
||||
luci_build = data[0].luci_build
|
||||
ddns_version = data[0].script_ver
|
||||
ddns_required = data[0].script_min
|
||||
|
||||
// Service sections
|
||||
for( i = 1; i < data.length; i++ )
|
||||
{
|
||||
|
@ -135,27 +122,13 @@
|
|||
}
|
||||
}
|
||||
|
||||
// event handler for map.title link
|
||||
function onclick_maptitle() {
|
||||
var str = "<%:Version Information%>";
|
||||
str += "\n\nluci-app-ddns:";
|
||||
str += "\n\t<%:Version%>:\t" + luci_version;
|
||||
str += "\n\t<%:Build%>:\t" + luci_build;
|
||||
str += "\n\nddns-scripts <%:required%>:";
|
||||
str += "\n\t<%:Version%>:\t" + ddns_required + " <%:or greater%>";
|
||||
str += "\n\nddns-scripts <%:installed%>:";
|
||||
str += "\n\t<%:Version%>:\t" + ddns_version;
|
||||
str += "\n\n"
|
||||
alert(str);
|
||||
}
|
||||
|
||||
// event handler for start/stop button
|
||||
function onclick_startstop(id) {
|
||||
// extract section
|
||||
var section = _id2section(id);
|
||||
// get elements
|
||||
var cbx = document.getElementById("cbid.ddns." + section + ".enabled"); // Enabled
|
||||
var obj = document.getElementById("cbi-ddns-overview-status-legend"); // objext defined below to make in-/visible
|
||||
var obj = document.getElementById("cbi-ddns-overview-status-legend"); // object defined below to make in-/visible
|
||||
if ( !(obj && cbx) ) { return; } // security check
|
||||
|
||||
// make me visible
|
||||
|
@ -165,7 +138,7 @@
|
|||
var btnXHR = new XHR();
|
||||
btnXHR.get('<%=luci.dispatcher.build_url("admin", "services", "ddns", "startstop")%>/' + section + '/' + cbx.checked, null,
|
||||
function(x, data) {
|
||||
if (x.responseText == "_uncommited_") {
|
||||
if (x.responseText == "_uncommitted_") {
|
||||
// we need a trick to display Ampersand "&" in stead of "&" or "&"
|
||||
// after translation
|
||||
txt="<%:Please [Save & Apply] your changes first%>";
|
||||
|
@ -182,8 +155,9 @@
|
|||
);
|
||||
}
|
||||
|
||||
var ddns_ov_XHR = new XHR();
|
||||
// force to immediate show status on page load (not waiting for XHR.poll)
|
||||
XHR.get('<%=luci.dispatcher.build_url("admin", "services", "ddns", "status")%>', null,
|
||||
ddns_ov_XHR.get('<%=luci.dispatcher.build_url("admin", "services", "ddns", "status")%>', null,
|
||||
function(x, data) {
|
||||
_data2elements(data);
|
||||
}
|
||||
|
@ -192,7 +166,7 @@
|
|||
// define only ONE XHR.poll in a page because if one is running it blocks the other one
|
||||
// optimum is to define on Map or Section Level from here you can reach all elements
|
||||
// we need update every 15 seconds only
|
||||
XHR.poll(15, '<%=luci.dispatcher.build_url("admin", "services", "ddns", "status")%>', null,
|
||||
ddns_ov_XHR.poll(15, '<%=luci.dispatcher.build_url("admin", "services", "ddns", "status")%>', null,
|
||||
function(x, data) {
|
||||
_data2elements(data);
|
||||
}
|
||||
|
|
|
@ -106,7 +106,7 @@
|
|||
break;
|
||||
}
|
||||
|
||||
// monitored interfacce
|
||||
// monitored interface
|
||||
if (data[i].iface == "_nonet_")
|
||||
tr.insertCell(-1).innerHTML = '<em><%:Config error%></em>';
|
||||
else
|
||||
|
@ -125,14 +125,15 @@
|
|||
}
|
||||
}
|
||||
|
||||
var ddns_status_XHR = new XHR();
|
||||
// force to immediate show status (not waiting for XHR.poll)
|
||||
XHR.get('<%=luci.dispatcher.build_url("admin", "services", "ddns", "status")%>', null,
|
||||
ddns_status_XHR.get('<%=luci.dispatcher.build_url("admin", "services", "ddns", "status")%>', null,
|
||||
function(x, data) {
|
||||
_data2elements(x, data);
|
||||
}
|
||||
);
|
||||
|
||||
XHR.poll(10, '<%=luci.dispatcher.build_url("admin", "services", "ddns", "status")%>', null,
|
||||
ddns_status_XHR.poll(10, '<%=luci.dispatcher.build_url("admin", "services", "ddns", "status")%>', null,
|
||||
function(x, data) {
|
||||
_data2elements(x, data);
|
||||
}
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: luci-app-ddns\n"
|
||||
"POT-Creation-Date: 2014-11-09 13:41+0100\n"
|
||||
"PO-Revision-Date: 2014-11-09 14:29+0100\n"
|
||||
"POT-Creation-Date: 2015-01-17 18:28+0100\n"
|
||||
"PO-Revision-Date: 2015-01-17 18:36+0100\n"
|
||||
"Last-Translator: Christian Schoenebeck <christian.schoenebeck@gmail.com>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: de\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -17,6 +17,15 @@ msgstr ""
|
|||
msgid "&"
|
||||
msgstr "&"
|
||||
|
||||
msgid "-- custom --"
|
||||
msgstr "-- benutzerdefiniert --"
|
||||
|
||||
msgid "Advanced Settings"
|
||||
msgstr "Erweiterte Einstellungen"
|
||||
|
||||
msgid "Applying changes"
|
||||
msgstr "Änderungen anwenden"
|
||||
|
||||
msgid "Basic Settings"
|
||||
msgstr "Grundlegende Einstellungen"
|
||||
|
||||
|
@ -36,9 +45,6 @@ msgstr ""
|
|||
">Wenn Sie Aktualisierungen für IPv4 und IPv6 senden möchten benötigen Sie "
|
||||
"zwei Konfigurationen z.B. 'myddns_ipv4' und 'myddns_ipv6'"
|
||||
|
||||
msgid "Build"
|
||||
msgstr "Build"
|
||||
|
||||
msgid ""
|
||||
"BusyBox's nslookup and Wget do not support to specify the IP version to use "
|
||||
"for communication with DDNS Provider."
|
||||
|
@ -56,15 +62,15 @@ msgstr ""
|
|||
msgid "Check Interval"
|
||||
msgstr "Prüfinterval"
|
||||
|
||||
msgid "Check for changed IP every"
|
||||
msgstr "Teste auf neue IP alle"
|
||||
|
||||
msgid "Check-time unit"
|
||||
msgstr "Zeiteinheit"
|
||||
msgid "Collecting data..."
|
||||
msgstr "Sammle Daten..."
|
||||
|
||||
msgid "Config error"
|
||||
msgstr "Konfigurationsfehler"
|
||||
|
||||
msgid "Configuration"
|
||||
msgstr "Einstellungen"
|
||||
|
||||
msgid "Configure here the details for selected Dynamic DNS service"
|
||||
msgstr "Konfiguriere hier die Details für den gewählten Dynamik DNS Dienst"
|
||||
|
||||
|
@ -153,6 +159,9 @@ msgstr ""
|
|||
msgid "Details for"
|
||||
msgstr "Details für"
|
||||
|
||||
msgid "Disabled"
|
||||
msgstr "Deaktiviert"
|
||||
|
||||
msgid "Dynamic DNS"
|
||||
msgstr "Dynamisches DNS"
|
||||
|
||||
|
@ -166,6 +175,12 @@ msgstr ""
|
|||
msgid "Enable secure communication with DDNS provider"
|
||||
msgstr "Aktiviert sichere Kommunikation mit dem DDNS Anbieter"
|
||||
|
||||
msgid "Enabled"
|
||||
msgstr "Aktiviert"
|
||||
|
||||
msgid "Error"
|
||||
msgstr "Fehler"
|
||||
|
||||
msgid "Error Retry Counter"
|
||||
msgstr "Wiederholungszähler bei Fehler"
|
||||
|
||||
|
@ -175,8 +190,8 @@ msgstr "Wiederholungsintervall bei Fehler"
|
|||
msgid "Event Network"
|
||||
msgstr "Ereignis Netzwerk"
|
||||
|
||||
msgid "Event interface"
|
||||
msgstr "Ereignis Netzwerk"
|
||||
msgid "File"
|
||||
msgstr "Datei"
|
||||
|
||||
msgid "File not found"
|
||||
msgstr "Datei nicht gefunden"
|
||||
|
@ -203,12 +218,6 @@ msgstr "Erzwungene Aktualisierung"
|
|||
msgid "Force TCP on DNS"
|
||||
msgstr "Erzwinge TCP bei DNS-Anfragen"
|
||||
|
||||
msgid "Force update every"
|
||||
msgstr "Erzwinge Aktualisierung alle"
|
||||
|
||||
msgid "Force-time unit"
|
||||
msgstr "Zeiteinheit"
|
||||
|
||||
msgid "Forced IP Version don't matched"
|
||||
msgstr "Erzwungene IP Version stimmt nicht überein"
|
||||
|
||||
|
@ -233,6 +242,9 @@ msgstr "IP-Adressquelle"
|
|||
msgid "IP address version"
|
||||
msgstr "IP-Adressversion"
|
||||
|
||||
msgid "IPv4-Address"
|
||||
msgstr "IPv4-Adresse"
|
||||
|
||||
msgid "IPv6 address must be given in square brackets"
|
||||
msgstr "Eine IPv6 Adresse muss in eckigen Klammern angegeben werden"
|
||||
|
||||
|
@ -248,6 +260,9 @@ msgstr ""
|
|||
msgid "IPv6 not supported"
|
||||
msgstr "IPv6 nicht unterstützt"
|
||||
|
||||
msgid "IPv6-Address"
|
||||
msgstr "IPv6-Adresse"
|
||||
|
||||
msgid ""
|
||||
"If this service section is disabled it could not be started.<br />Neither "
|
||||
"from LuCI interface nor from console"
|
||||
|
@ -261,6 +276,12 @@ msgstr ""
|
|||
"In einigen Versionen von OpenWrt wurde cURL/libcurl ohne Proxy Unterstützung "
|
||||
"compiliert."
|
||||
|
||||
msgid "Info"
|
||||
msgstr "Informationen"
|
||||
|
||||
msgid "Interface"
|
||||
msgstr "Schnittstelle"
|
||||
|
||||
msgid ""
|
||||
"Interval to check for changed IP<br />Values below 5 minutes == 300 seconds "
|
||||
"are not supported"
|
||||
|
@ -280,6 +301,9 @@ msgstr ""
|
|||
msgid "Last Update"
|
||||
msgstr "Letztes Aktualisierung"
|
||||
|
||||
msgid "Loading"
|
||||
msgstr "Lade"
|
||||
|
||||
msgid "Log File Viewer"
|
||||
msgstr "Protokolldatei"
|
||||
|
||||
|
@ -296,6 +320,9 @@ msgstr ""
|
|||
"Weder GNU Wget mit SSL noch cURL sind installiert um Aktualisierungen über "
|
||||
"HTTPS Protokoll zu unterstützen."
|
||||
|
||||
msgid "Network"
|
||||
msgstr "Netzwerk"
|
||||
|
||||
msgid "Network on which the ddns-updater scripts will be started"
|
||||
msgstr "Netzwerk auf dem Ereignisse die ddns-updater Skripte starten"
|
||||
|
||||
|
@ -311,6 +338,9 @@ msgstr "Keine Daten"
|
|||
msgid "No logging"
|
||||
msgstr "Keine Protokollierung"
|
||||
|
||||
msgid "Notice"
|
||||
msgstr "Notiz"
|
||||
|
||||
msgid "OPTIONAL: Force the usage of pure IPv4/IPv6 only communication."
|
||||
msgstr ""
|
||||
"OPTIONAL: Erzwingt die Verwendung einer reinen IPv4/IPv6 Kommunikation."
|
||||
|
@ -338,12 +368,21 @@ msgstr ""
|
|||
msgid "On Error the script will stop execution after given number of retrys"
|
||||
msgstr "Das Skript wird nach der gegebener Anzahlt von Fehlversuchen beendet"
|
||||
|
||||
msgid "Overview"
|
||||
msgstr "Übersicht"
|
||||
|
||||
msgid "PROXY-Server"
|
||||
msgstr "Proxy-Server"
|
||||
|
||||
msgid "PROXY-Server not supported"
|
||||
msgstr "Proxy-Server nicht unterstützt"
|
||||
|
||||
msgid "Password"
|
||||
msgstr "Passwort"
|
||||
|
||||
msgid "Path to CA-Certificate"
|
||||
msgstr "Pfad zum CA-Zertifikat"
|
||||
|
||||
msgid "Please [Save & Apply] your changes first"
|
||||
msgstr "Bitte [Speichern & Anwenden] Sie Änderungen zunächst"
|
||||
|
||||
|
@ -377,17 +416,14 @@ msgstr "Einmalig ausführen"
|
|||
msgid "Script"
|
||||
msgstr "Skript"
|
||||
|
||||
msgid "Service"
|
||||
msgstr "Dienst"
|
||||
|
||||
msgid "Show more"
|
||||
msgstr "Zeige mehr"
|
||||
|
||||
msgid "Software update required"
|
||||
msgstr "Softwareaktualisierung nötig"
|
||||
|
||||
msgid "Source of IP address"
|
||||
msgstr "Quelle der IP-Adresse"
|
||||
msgid "Start"
|
||||
msgstr "Start"
|
||||
|
||||
msgid "Start / Stop"
|
||||
msgstr "Start / Stopp"
|
||||
|
@ -435,9 +471,24 @@ msgstr ""
|
|||
"Definiert das Skript mit dem die aktuelle IP-Adresse des System gelesen "
|
||||
"wird."
|
||||
|
||||
msgid "Username"
|
||||
msgstr "Benutzername"
|
||||
|
||||
msgid "Verify"
|
||||
msgstr "überprüfen"
|
||||
|
||||
msgid "Version"
|
||||
msgstr "Version"
|
||||
|
||||
msgid "Version Information"
|
||||
msgstr "Versionsinformationen"
|
||||
|
||||
msgid "Waiting for changes to be applied..."
|
||||
msgstr "Änderungen werden angewandt..."
|
||||
|
||||
msgid "Warning"
|
||||
msgstr "Warnung"
|
||||
|
||||
msgid ""
|
||||
"Writes detailed messages to log file. File will be truncated automatically."
|
||||
msgstr ""
|
||||
|
@ -482,9 +533,6 @@ msgstr "Konnte Server nicht finden:"
|
|||
msgid "config error"
|
||||
msgstr "Konfigurationsfehler"
|
||||
|
||||
msgid "custom"
|
||||
msgstr "benutzerdefiniert"
|
||||
|
||||
msgid "days"
|
||||
msgstr "Tage"
|
||||
|
||||
|
@ -500,9 +548,6 @@ msgstr "hier aktivieren"
|
|||
msgid "file or directory not found or not 'IGNORE'"
|
||||
msgstr "Datei oder Verzeichnis nicht gefunden oder nicht 'IGNORE'"
|
||||
|
||||
msgid "h"
|
||||
msgstr "Stunden"
|
||||
|
||||
msgid "hours"
|
||||
msgstr "Stunden"
|
||||
|
||||
|
@ -512,15 +557,9 @@ msgstr "Aktualisierung hier installieren"
|
|||
msgid "installed"
|
||||
msgstr "installiert"
|
||||
|
||||
msgid "interface"
|
||||
msgstr "Schnittstelle"
|
||||
|
||||
msgid "invalid - Sample"
|
||||
msgstr "ungültig - Beispiel"
|
||||
|
||||
msgid "min"
|
||||
msgstr "Minuten"
|
||||
|
||||
msgid "minimum value '0'"
|
||||
msgstr "Minimum Wert '0'"
|
||||
|
||||
|
@ -545,9 +584,6 @@ msgstr "muss mit 'http://' beginnen"
|
|||
msgid "nc (netcat) can not connect"
|
||||
msgstr "nc (netcat) kann keine Verbindung herstellen"
|
||||
|
||||
msgid "network"
|
||||
msgstr "Netzwerk"
|
||||
|
||||
msgid "never"
|
||||
msgstr "nie"
|
||||
|
||||
|
@ -564,8 +600,8 @@ msgstr "nslookup kann den Namen nicht auflösen"
|
|||
msgid "or"
|
||||
msgstr "oder"
|
||||
|
||||
msgid "or greater"
|
||||
msgstr "oder größer"
|
||||
msgid "or higher"
|
||||
msgstr "oder höher"
|
||||
|
||||
msgid "please disable"
|
||||
msgstr "Bitte deaktivieren"
|
||||
|
|
|
@ -4,6 +4,15 @@ msgstr "Content-Type: text/plain; charset=UTF-8"
|
|||
msgid "&"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- custom --"
|
||||
msgstr ""
|
||||
|
||||
msgid "Advanced Settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Applying changes"
|
||||
msgstr ""
|
||||
|
||||
msgid "Basic Settings"
|
||||
msgstr ""
|
||||
|
||||
|
@ -18,9 +27,6 @@ msgid ""
|
|||
"separate Configurations i.e. 'myddns_ipv4' and 'myddns_ipv6'"
|
||||
msgstr ""
|
||||
|
||||
msgid "Build"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"BusyBox's nslookup and Wget do not support to specify the IP version to use "
|
||||
"for communication with DDNS Provider."
|
||||
|
@ -34,15 +40,15 @@ msgstr ""
|
|||
msgid "Check Interval"
|
||||
msgstr ""
|
||||
|
||||
msgid "Check for changed IP every"
|
||||
msgstr ""
|
||||
|
||||
msgid "Check-time unit"
|
||||
msgid "Collecting data..."
|
||||
msgstr ""
|
||||
|
||||
msgid "Config error"
|
||||
msgstr ""
|
||||
|
||||
msgid "Configuration"
|
||||
msgstr ""
|
||||
|
||||
msgid "Configure here the details for selected Dynamic DNS service"
|
||||
msgstr ""
|
||||
|
||||
|
@ -109,6 +115,9 @@ msgstr ""
|
|||
msgid "Details for"
|
||||
msgstr ""
|
||||
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
|
||||
msgid "Dynamic DNS"
|
||||
msgstr ""
|
||||
|
||||
|
@ -120,6 +129,12 @@ msgstr ""
|
|||
msgid "Enable secure communication with DDNS provider"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enabled"
|
||||
msgstr ""
|
||||
|
||||
msgid "Error"
|
||||
msgstr ""
|
||||
|
||||
msgid "Error Retry Counter"
|
||||
msgstr ""
|
||||
|
||||
|
@ -129,7 +144,7 @@ msgstr ""
|
|||
msgid "Event Network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Event interface"
|
||||
msgid "File"
|
||||
msgstr ""
|
||||
|
||||
msgid "File not found"
|
||||
|
@ -155,12 +170,6 @@ msgstr ""
|
|||
msgid "Force TCP on DNS"
|
||||
msgstr ""
|
||||
|
||||
msgid "Force update every"
|
||||
msgstr ""
|
||||
|
||||
msgid "Force-time unit"
|
||||
msgstr ""
|
||||
|
||||
msgid "Forced IP Version don't matched"
|
||||
msgstr ""
|
||||
|
||||
|
@ -185,6 +194,9 @@ msgstr ""
|
|||
msgid "IP address version"
|
||||
msgstr ""
|
||||
|
||||
msgid "IPv4-Address"
|
||||
msgstr ""
|
||||
|
||||
msgid "IPv6 address must be given in square brackets"
|
||||
msgstr ""
|
||||
|
||||
|
@ -197,6 +209,9 @@ msgstr ""
|
|||
msgid "IPv6 not supported"
|
||||
msgstr ""
|
||||
|
||||
msgid "IPv6-Address"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"If this service section is disabled it could not be started.<br />Neither "
|
||||
"from LuCI interface nor from console"
|
||||
|
@ -206,6 +221,12 @@ msgid ""
|
|||
"In some versions cURL/libcurl in OpenWrt is compiled without proxy support."
|
||||
msgstr ""
|
||||
|
||||
msgid "Info"
|
||||
msgstr ""
|
||||
|
||||
msgid "Interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Interval to check for changed IP<br />Values below 5 minutes == 300 seconds "
|
||||
"are not supported"
|
||||
|
@ -220,6 +241,9 @@ msgstr ""
|
|||
msgid "Last Update"
|
||||
msgstr ""
|
||||
|
||||
msgid "Loading"
|
||||
msgstr ""
|
||||
|
||||
msgid "Log File Viewer"
|
||||
msgstr ""
|
||||
|
||||
|
@ -234,6 +258,9 @@ msgid ""
|
|||
"protocol."
|
||||
msgstr ""
|
||||
|
||||
msgid "Network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Network on which the ddns-updater scripts will be started"
|
||||
msgstr ""
|
||||
|
||||
|
@ -249,6 +276,9 @@ msgstr ""
|
|||
msgid "No logging"
|
||||
msgstr ""
|
||||
|
||||
msgid "Notice"
|
||||
msgstr ""
|
||||
|
||||
msgid "OPTIONAL: Force the usage of pure IPv4/IPv6 only communication."
|
||||
msgstr ""
|
||||
|
||||
|
@ -270,12 +300,21 @@ msgstr ""
|
|||
msgid "On Error the script will stop execution after given number of retrys"
|
||||
msgstr ""
|
||||
|
||||
msgid "Overview"
|
||||
msgstr ""
|
||||
|
||||
msgid "PROXY-Server"
|
||||
msgstr ""
|
||||
|
||||
msgid "PROXY-Server not supported"
|
||||
msgstr ""
|
||||
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
|
||||
msgid "Path to CA-Certificate"
|
||||
msgstr ""
|
||||
|
||||
msgid "Please [Save & Apply] your changes first"
|
||||
msgstr ""
|
||||
|
||||
|
@ -309,16 +348,13 @@ msgstr ""
|
|||
msgid "Script"
|
||||
msgstr ""
|
||||
|
||||
msgid "Service"
|
||||
msgstr ""
|
||||
|
||||
msgid "Show more"
|
||||
msgstr ""
|
||||
|
||||
msgid "Software update required"
|
||||
msgstr ""
|
||||
|
||||
msgid "Source of IP address"
|
||||
msgid "Start"
|
||||
msgstr ""
|
||||
|
||||
msgid "Start / Stop"
|
||||
|
@ -361,9 +397,24 @@ msgstr ""
|
|||
msgid "User defined script to read systems IP-Address"
|
||||
msgstr ""
|
||||
|
||||
msgid "Username"
|
||||
msgstr ""
|
||||
|
||||
msgid "Verify"
|
||||
msgstr ""
|
||||
|
||||
msgid "Version"
|
||||
msgstr ""
|
||||
|
||||
msgid "Version Information"
|
||||
msgstr ""
|
||||
|
||||
msgid "Waiting for changes to be applied..."
|
||||
msgstr ""
|
||||
|
||||
msgid "Warning"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Writes detailed messages to log file. File will be truncated automatically."
|
||||
msgstr ""
|
||||
|
@ -397,9 +448,6 @@ msgstr ""
|
|||
msgid "config error"
|
||||
msgstr ""
|
||||
|
||||
msgid "custom"
|
||||
msgstr ""
|
||||
|
||||
msgid "days"
|
||||
msgstr ""
|
||||
|
||||
|
@ -415,9 +463,6 @@ msgstr ""
|
|||
msgid "file or directory not found or not 'IGNORE'"
|
||||
msgstr ""
|
||||
|
||||
msgid "h"
|
||||
msgstr ""
|
||||
|
||||
msgid "hours"
|
||||
msgstr ""
|
||||
|
||||
|
@ -427,15 +472,9 @@ msgstr ""
|
|||
msgid "installed"
|
||||
msgstr ""
|
||||
|
||||
msgid "interface"
|
||||
msgstr ""
|
||||
|
||||
msgid "invalid - Sample"
|
||||
msgstr ""
|
||||
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
|
||||
msgid "minimum value '0'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -460,9 +499,6 @@ msgstr ""
|
|||
msgid "nc (netcat) can not connect"
|
||||
msgstr ""
|
||||
|
||||
msgid "network"
|
||||
msgstr ""
|
||||
|
||||
msgid "never"
|
||||
msgstr ""
|
||||
|
||||
|
@ -478,7 +514,7 @@ msgstr ""
|
|||
msgid "or"
|
||||
msgstr ""
|
||||
|
||||
msgid "or greater"
|
||||
msgid "or higher"
|
||||
msgstr ""
|
||||
|
||||
msgid "please disable"
|
||||
|
|
Loading…
Reference in a new issue