diff options
Diffstat (limited to 'applications/luci-app-ddns')
-rw-r--r-- | applications/luci-app-ddns/Makefile | 9 | ||||
-rwxr-xr-x | applications/luci-app-ddns/luasrc/controller/ddns.lua | 106 | ||||
-rw-r--r-- | applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua | 98 | ||||
-rw-r--r-- | applications/luci-app-ddns/luasrc/model/cbi/ddns/hints.lua | 20 | ||||
-rw-r--r-- | applications/luci-app-ddns/luasrc/model/cbi/ddns/overview.lua | 58 | ||||
-rwxr-xr-x | applications/luci-app-ddns/luasrc/tools/ddns.lua | 169 | ||||
-rw-r--r-- | applications/luci-app-ddns/luasrc/view/ddns/global_value.htm | 5 | ||||
-rw-r--r-- | applications/luci-app-ddns/luasrc/view/ddns/system_status.htm | 101 | ||||
-rw-r--r-- | applications/luci-app-ddns/po/it/ddns.po | 407 | ||||
-rw-r--r-- | applications/luci-app-ddns/po/pt-br/ddns.po | 20 | ||||
-rw-r--r-- | applications/luci-app-ddns/po/ru/ddns.po | 442 | ||||
-rw-r--r-- | applications/luci-app-ddns/po/sv/ddns.po | 724 | ||||
-rw-r--r-- | applications/luci-app-ddns/po/zh-cn/ddns.po | 273 | ||||
-rw-r--r-- | applications/luci-app-ddns/po/zh-tw/ddns.po | 456 |
14 files changed, 1983 insertions, 905 deletions
diff --git a/applications/luci-app-ddns/Makefile b/applications/luci-app-ddns/Makefile index 88c905a41a..7295189518 100644 --- a/applications/luci-app-ddns/Makefile +++ b/applications/luci-app-ddns/Makefile @@ -2,7 +2,7 @@ # Copyright 2008 Steven Barth <steven@midlink.org> # Copyright 2008 Jo-Philipp Wich <jow@openwrt.org> # Copyright 2013 Manuel Munz <freifunk at somakoma dot de> -# Copyright 2014-2016 Christian Schoenebeck <christian dot schoenebeck at gmail dot com> +# Copyright 2014-2018 Christian Schoenebeck <christian dot schoenebeck at gmail dot com> # # This is free software, licensed under the Apache License, Version 2.0 @@ -12,14 +12,15 @@ include $(TOPDIR)/rules.mk # Version == major.minor.patch # increase on new functionality (minor) or patches (patch) -PKG_VERSION:=2.4.8 +PKG_VERSION:=2.4.9 # Release == build # increase on changes of translation files -PKG_RELEASE:=1 +PKG_RELEASE:=5 PKG_LICENSE:=Apache-2.0 -PKG_MAINTAINER:=Christian Schoenebeck <christian.schoenebeck@gmail.com> +PKG_MAINTAINER:=Christian Schoenebeck <christian.schoenebeck@gmail.com>, \ + Ansuel Smith <ansuelsmth@gmail.com> # LuCI specific settings LUCI_TITLE:=LuCI Support for Dynamic DNS Client (ddns-scripts) diff --git a/applications/luci-app-ddns/luasrc/controller/ddns.lua b/applications/luci-app-ddns/luasrc/controller/ddns.lua index 63bb8bf4be..e152bb0d98 100755 --- a/applications/luci-app-ddns/luasrc/controller/ddns.lua +++ b/applications/luci-app-ddns/luasrc/controller/ddns.lua @@ -1,7 +1,7 @@ -- Copyright 2008 Steven Barth <steven@midlink.org> -- Copyright 2008 Jo-Philipp Wich <jow@openwrt.org> -- Copyright 2013 Manuel Munz <freifunk at somakoma dot de> --- Copyright 2014-2016 Christian Schoenebeck <christian dot schoenebeck at gmail dot com> +-- Copyright 2014-2018 Christian Schoenebeck <christian dot schoenebeck at gmail dot com> -- Licensed to the public under the Apache License 2.0. module("luci.controller.ddns", package.seeall) @@ -20,16 +20,14 @@ local DDNS = require "luci.tools.ddns" -- ddns multiused functions luci_helper = "/usr/lib/ddns/dynamic_dns_lucihelper.sh" local srv_name = "ddns-scripts" -local srv_ver_min = "2.7.6" -- minimum version of service required -local srv_ver_cmd = luci_helper .. [[ -V | awk {'print $2'}]] +local srv_ver_min = "2.7.7" -- minimum version of service required local app_name = "luci-app-ddns" local app_title = "Dynamic DNS" -local app_version = "2.4.8-1" +local app_version = "2.4.9-1" function index() 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 muci = require "luci.model.uci" -- no config create an empty one @@ -81,33 +79,40 @@ end -- Standardized application/service functions function app_title_main() - return [[<a href="javascript:alert(']] - .. I18N.translate("Version Information") - .. [[\n\n]] .. app_name - .. [[\n\t]] .. I18N.translate("Version") .. [[:\t]] .. app_version - .. [[\n\n]] .. srv_name .. [[ ]] .. I18N.translate("required") .. [[:]] - .. [[\n\t]] .. I18N.translate("Version") .. [[:\t]] - .. srv_ver_min .. [[ ]] .. I18N.translate("or higher") - .. [[\n\n]] .. srv_name .. [[ ]] .. I18N.translate("installed") .. [[:]] - .. [[\n\t]] .. I18N.translate("Version") .. [[:\t]] - .. (service_version() or I18N.translate("NOT installed")) - .. [[\n\n]] - .. [[')">]] - .. I18N.translate(app_title) - .. [[</a>]] + tmp = {} + tmp[#tmp+1] = [[<a href="javascript:alert(']] + tmp[#tmp+1] = I18N.translate("Version Information") + tmp[#tmp+1] = [[\n\n]] .. app_name + tmp[#tmp+1] = [[\n]] .. I18N.translate("Version") .. [[: ]] .. app_version + tmp[#tmp+1] = [[\n\n]] .. srv_name .. [[ ]] .. I18N.translate("required") .. [[:]] + tmp[#tmp+1] = [[\n]] .. I18N.translate("Version") .. [[: ]] + tmp[#tmp+1] = srv_ver_min .. [[ ]] .. I18N.translate("or higher") + tmp[#tmp+1] = [[\n\n]] .. srv_name .. [[ ]] .. I18N.translate("installed") .. [[:]] + tmp[#tmp+1] = [[\n]] .. I18N.translate("Version") .. [[: ]] + tmp[#tmp+1] = (service_version() or I18N.translate("NOT installed")) + tmp[#tmp+1] = [[\n\n]] + tmp[#tmp+1] = [[')">]] + tmp[#tmp+1] = I18N.translate(app_title) + tmp[#tmp+1] = [[</a>]] + + return table.concat(tmp) end -function service_version() - local ver = nil - ver = UTIL.exec(srv_ver_cmd) - if #ver > 0 then return ver end - - IPKG.list_installed(srv_name, function(n, v, d) - if v and (#v > 0) then ver = v end - end - ) - return ver +function service_version() + + local srv_ver_cmd = luci_helper .. " -V | awk {'print $2'} " + local ver + + if IPKG then + ver = IPKG.info(srv_name)[srv_name].Version + else + ver = UTIL.exec(srv_ver_cmd) + end + + if ver and #ver > 0 then return ver or nil end + end + function service_ok() return IPKG.compare_versions((service_version() or "0"), ">=", srv_ver_min) end @@ -180,28 +185,33 @@ local function _get_status() end -- get/set monitored interface and IP version - local iface = s["interface"] or "_nonet_" + local iface = s["interface"] or "wan" local use_ipv6 = tonumber(s["use_ipv6"]) or 0 - if iface ~= "_nonet_" then - local ipv = (use_ipv6 == 1) and "IPv6" or "IPv4" - iface = ipv .. " / " .. iface - end + local ipv = (use_ipv6 == 1) and "IPv6" or "IPv4" + iface = ipv .. " / " .. iface -- try to get registered IP local lookup_host = s["lookup_host"] or "_nolookup_" - local dnsserver = s["dns_server"] or "" - local force_ipversion = tonumber(s["force_ipversion"] or 0) - local force_dnstcp = tonumber(s["force_dnstcp"] or 0) - local is_glue = tonumber(s["is_glue"] or 0) - local command = luci_helper .. [[ -]] - if (use_ipv6 == 1) then command = command .. [[6]] end - if (force_ipversion == 1) then command = command .. [[f]] end - if (force_dnstcp == 1) then command = command .. [[t]] end - if (is_glue == 1) then command = command .. [[g]] end - command = command .. [[l ]] .. lookup_host - if (#dnsserver > 0) then command = command .. [[ -d ]] .. dnsserver end - command = command .. [[ -- get_registered_ip]] - local reg_ip = SYS.exec(command) + local chk_sec = DDNS.calc_seconds( + tonumber(s["check_interval"]) or 10, + s["check_unit"] or "minutes" ) + local reg_ip = DDNS.get_regip(section, chk_sec) + if reg_ip == "NOFILE" then + local dnsserver = s["dns_server"] or "" + local force_ipversion = tonumber(s["force_ipversion"] or 0) + local force_dnstcp = tonumber(s["force_dnstcp"] or 0) + local is_glue = tonumber(s["is_glue"] or 0) + local command = luci_helper .. [[ -]] + if (use_ipv6 == 1) then command = command .. [[6]] end + if (force_ipversion == 1) then command = command .. [[f]] end + if (force_dnstcp == 1) then command = command .. [[t]] end + if (is_glue == 1) then command = command .. [[g]] end + command = command .. [[l ]] .. lookup_host + command = command .. [[ -S ]] .. section + if (#dnsserver > 0) then command = command .. [[ -d ]] .. dnsserver end + command = command .. [[ -- get_registered_ip]] + reg_ip = SYS.exec(command) + end if reg_ip == "" then reg_ip = "_nodata_" end @@ -296,7 +306,7 @@ function startstop(section, enabled) uci:unload("ddns") -- start ddns-updater for section - local command = luci_helper .. [[ -S ]] .. section .. [[ -- start]] + local command = "%s -S %s -- start" %{ luci_helper, UTIL.shellquote(section) } os.execute(command) NX.nanosleep(3) -- 3 seconds "show time" diff --git a/applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua b/applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua index a8f4cbf7ad..eb2159076e 100644 --- a/applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua +++ b/applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua @@ -172,7 +172,7 @@ local function _option_used(option, urlscript) end -- function to verify if option is valid -local function _option_validate(self, value) +local function _option_validate(self, value, optional) -- section is globally defined here be calling agrument (see above) local fusev6 = usev6:formvalue(section) or "0" local fsvc4 = svc4:formvalue(section) or "-" @@ -204,6 +204,7 @@ local function _option_validate(self, value) if used < 1 then return "" end -- needed but no data then return error if not value or (#value == 0) then + if optional then return nil end return nil, err_tab_basic(self) .. translate("missing / required") end return value @@ -292,6 +293,10 @@ function luh.parse(self, section, novld) end -- use_ipv6 -- ################################################################ + +--We call it globally as it's called 11 times even outside specific function, saves 11 os.execute slow command! +local has_ipv6 = DDNS.env_info("has_ipv6") + usev6 = ns:taboption("basic", ListValue, "use_ipv6", translate("IP address version"), translate("Defines which IP address 'IPv4/IPv6' is send to the DDNS provider") ) @@ -300,16 +305,16 @@ usev6.default = "0" usev6:value("0", translate("IPv4-Address") ) function usev6.cfgvalue(self, section) local value = AbstractValue.cfgvalue(self, section) or "0" - if DDNS.has_ipv6 or (value == "1" and not DDNS.has_ipv6) then + if has_ipv6 or (value == "1" and not has_ipv6) then self:value("1", translate("IPv6-Address") ) end - if value == "1" and not DDNS.has_ipv6 then + if value == "1" and not has_ipv6 then self.description = err_ipv6_basic end return value end function usev6.validate(self, value) - if (value == "1" and DDNS.has_ipv6) or value == "0" then + if (value == "1" and has_ipv6) or value == "0" then return value end return nil, err_tab_basic(self) .. err_ipv6_plain @@ -360,7 +365,7 @@ svc6 = ns:taboption("basic", ListValue, "ipv6_service_name", translate("DDNS Service provider") .. " [IPv6]" ) svc6.default = "-" svc6:depends("use_ipv6", "1") -- only show on IPv6 -if not DDNS.has_ipv6 then +if not has_ipv6 then svc6.description = err_ipv6_basic end function svc6.cfgvalue(self, section) @@ -374,7 +379,7 @@ function svc6.cfgvalue(self, section) end function svc6.validate(self, value) if usev6:formvalue(section) == "1" then -- do only on IPv6 - if DDNS.has_ipv6 then return value end + if has_ipv6 then return value end return nil, err_tab_basic(self) .. err_ipv6_plain else return "" -- suppress validate error @@ -509,18 +514,18 @@ pe = ns:taboption("basic", Value, "param_enc", translate("Optional Encoded Parameter"), translate("Optional: Replaces [PARAMENC] in Update-URL (URL-encoded)") ) function pe.validate(self, value) - return _option_validate(self, value) + return _option_validate(self, value, true) end function pe.parse(self, section, novld) DDNS.value_parse(self, section, novld) end --- IPv4/IPv6 - param_enc -- ################################################### +-- IPv4/IPv6 - param_opt -- ################################################### po = ns:taboption("basic", Value, "param_opt", translate("Optional Parameter"), translate("Optional: Replaces [PARAMOPT] in Update-URL (NOT URL-encoded)") ) function po.validate(self, value) - return _option_validate(self, value) + return _option_validate(self, value, true) end function po.parse(self, section, novld) DDNS.value_parse(self, section, novld) @@ -586,13 +591,17 @@ end svc6:value("-", translate("-- custom --") ) -- IPv4/IPv6 - use_https -- ################################################### -if DDNS.has_ssl or ( ( m:get(section, "use_https") or "0" ) == "1" ) then + +--We call it globally as it's called 4 times outside specific function. +local has_ssl = DDNS.env_info("has_ssl") + +if has_ssl or ( ( m:get(section, "use_https") or "0" ) == "1" ) then https = ns:taboption("basic", Flag, "use_https", translate("Use HTTP Secure") ) https.orientation = "horizontal" function https.cfgvalue(self, section) local value = AbstractValue.cfgvalue(self, section) - if not DDNS.has_ssl and value == "1" then + if not has_ssl and value == "1" then self.description = bold_on .. font_red .. translate("HTTPS not supported") .. font_off .. "<br />" .. translate("please disable") .. " !" .. bold_off @@ -602,7 +611,7 @@ if DDNS.has_ssl or ( ( m:get(section, "use_https") or "0" ) == "1" ) then return value end function https.validate(self, value) - if (value == "1" and DDNS.has_ssl ) or value == "0" then return value end + if (value == "1" and has_ssl ) or value == "0" then return value end return nil, err_tab_basic(self) .. translate("HTTPS not supported") .. " !" end function https.write(self, section, value) @@ -616,7 +625,7 @@ if DDNS.has_ssl or ( ( m:get(section, "use_https") or "0" ) == "1" ) then end -- IPv4/IPv6 - cacert -- ###################################################### -if DDNS.has_ssl then +if has_ssl then cert = ns:taboption("basic", Value, "cacert", translate("Path to CA-Certificate"), translate("directory or path/file") .. "<br />" .. @@ -706,7 +715,7 @@ src6:value("network", translate("Network")) src6:value("web", translate("URL")) src6:value("interface", translate("Interface")) src6:value("script", translate("Script")) -if not DDNS.has_ipv6 then +if not has_ipv6 then src6.description = err_ipv6_other end function src6.cfgvalue(self, section) @@ -715,7 +724,7 @@ end function src6.validate(self, value) if usev6:formvalue(section) ~= "1" then return "" -- ignore on IPv4 selected - elseif not DDNS.has_ipv6 then + elseif not has_ipv6 then return nil, err_tab_adv(self) .. err_ipv6_plain elseif not _verify_ip_source() then return nil, err_tab_adv(self) .. @@ -794,7 +803,7 @@ ipn6 = ns:taboption("advanced", ListValue, "ipv6_network", ipn6:depends("ipv6_source", "network") ipn6.default = "wan6" WADM.cbi_add_networks(ipn6) -if DDNS.has_ipv6 then +if has_ipv6 then ipn6.description = translate("Defines the network to read systems IPv6-Address from") else ipn6.description = err_ipv6_other @@ -808,7 +817,7 @@ function ipn6.validate(self, value) -- ignore if IPv4 selected OR -- ignore everything except "network" return "" - elseif DDNS.has_ipv6 then + elseif has_ipv6 then return value else return nil, err_tab_adv(self) .. err_ipv6_plain @@ -881,7 +890,7 @@ iurl6 = ns:taboption("advanced", Value, "ipv6_url", translate("URL to detect") .. " [IPv6]" ) iurl6:depends("ipv6_source", "web") iurl6.default = "http://checkipv6.dyndns.com" -if DDNS.has_ipv6 then +if has_ipv6 then iurl6.description = translate("Defines the Web page to read systems IPv6-Address from") else iurl6.description = err_ipv6_other @@ -895,7 +904,7 @@ function iurl6.validate(self, value) -- ignore if IPv4 selected OR -- ignore everything except "web" return "" - elseif not DDNS.has_ipv6 then + elseif not has_ipv6 then return nil, err_tab_adv(self) .. err_ipv6_plain elseif not value or #value == 0 then return nil, err_tab_adv(self) .. translate("missing / required") @@ -1051,7 +1060,7 @@ eif6:depends("ipv6_source", "web") eif6:depends("ipv6_source", "script") eif6.default = "wan6" WADM.cbi_add_networks(eif6) -if not DDNS.has_ipv6 then +if not has_ipv6 then eif6.description = err_ipv6_other else eif6.description = translate("Network on which the ddns-updater scripts will be started") @@ -1065,7 +1074,7 @@ function eif6.validate(self, value) or fsrc6 == "network" or fsrc6 == "interface" then return "" -- ignore IPv4, network, interface - elseif not DDNS.has_ipv6 then + elseif not has_ipv6 then return nil, err_tab_adv(self) .. err_ipv6_plain else return value @@ -1084,10 +1093,13 @@ function eif6.write(self, section, value) end function eif6.parse(self, section, novld) DDNS.value_parse(self, section, novld) -end +end -- IPv4/IPv6 - bind_network -- ################################################ -if DDNS.has_bindnet or ( ( m:get(section, "bind_network") or "" ) ~= "" ) then + +local has_bindnet = DDNS.env_info("has_bindnet") + +if has_bindnet or ( ( m:get(section, "bind_network") or "" ) ~= "" ) then bnet = ns:taboption("advanced", ListValue, "bind_network", translate("Bind Network") ) bnet:depends("ipv4_source", "web") @@ -1097,7 +1109,7 @@ if DDNS.has_bindnet or ( ( m:get(section, "bind_network") or "" ) ~= "" ) then WADM.cbi_add_networks(bnet) function bnet.cfgvalue(self, section) local value = AbstractValue.cfgvalue(self, section) - if not DDNS.has_bindnet and value ~= "" then + if not has_bindnet and value ~= "" then self.description = bold_on .. font_red .. translate("Binding to a specific network not supported") .. font_off .. "<br />" .. translate("please set to 'default'") .. " !" .. bold_off @@ -1108,7 +1120,7 @@ if DDNS.has_bindnet or ( ( m:get(section, "bind_network") or "" ) ~= "" ) then return value end function bnet.validate(self, value) - if ( (value ~= "") and DDNS.has_bindnet ) or (value == "") then return value end + if ( (value ~= "") and has_bindnet ) or (value == "") then return value end return nil, err_tab_adv(self) .. translate("Binding to a specific network not supported") .. " !" end function bnet.parse(self, section, novld) @@ -1119,13 +1131,16 @@ end -- IPv4 + IPv6 - force_ipversion -- ########################################### -- optional to force wget/curl and host to use only selected IP version -- command parameter "-4" or "-6" -if DDNS.has_forceip or ( ( m:get(section, "force_ipversion") or "0" ) ~= "0" ) then + +local has_forceip = DDNS.env_info("has_forceip") + +if has_forceip or ( ( m:get(section, "force_ipversion") or "0" ) ~= "0" ) then fipv = ns:taboption("advanced", Flag, "force_ipversion", translate("Force IP Version") ) fipv.orientation = "horizontal" function fipv.cfgvalue(self, section) local value = AbstractValue.cfgvalue(self, section) - if not DDNS.has_forceip and value ~= "0" then + if not has_forceip and value ~= "0" then self.description = bold_on .. font_red .. translate("Force IP Version not supported") .. font_off .. "<br />" .. translate("please disable") .. " !" .. bold_off @@ -1135,14 +1150,17 @@ if DDNS.has_forceip or ( ( m:get(section, "force_ipversion") or "0" ) ~= "0" ) t return value end function fipv.validate(self, value) - if (value == "1" and DDNS.has_forceip) or value == "0" then return value end + if (value == "1" and has_forceip) or value == "0" then return value end return nil, err_tab_adv(self) .. translate("Force IP Version not supported") end end -- IPv4 + IPv6 - dns_server -- ################################################ -- optional DNS Server to use resolving my IP -if DDNS.has_dnsserver or ( ( m:get(section, "dns_server") or "" ) ~= "" ) then + +local has_dnsserver = DDNS.env_info("has_dnsserver") + +if has_dnsserver or ( ( m:get(section, "dns_server") or "" ) ~= "" ) then dns = ns:taboption("advanced", Value, "dns_server", translate("DNS-Server"), translate("OPTIONAL: Use non-default DNS-Server to detect 'Registered IP'.") .. "<br />" .. @@ -1152,7 +1170,7 @@ if DDNS.has_dnsserver or ( ( m:get(section, "dns_server") or "" ) ~= "" ) then -- if .datatype is set, then it is checked before calling this function if not value or (#value == 0) then return "" -- ignore on empty - elseif not DDNS.has_dnsserver then + elseif not has_dnsserver then return nil, err_tab_adv(self) .. translate("Specifying a DNS-Server is not supported") elseif not DTYP.host(value) then return nil, err_tab_adv(self) .. translate("use hostname, FQDN, IPv4- or IPv6-Address") @@ -1179,13 +1197,16 @@ if DDNS.has_dnsserver or ( ( m:get(section, "dns_server") or "" ) ~= "" ) then end -- IPv4 + IPv6 - force_dnstcp -- ############################################## -if DDNS.has_bindhost or ( ( m:get(section, "force_dnstcp") or "0" ) ~= "0" ) then + +local has_bindhost = DDNS.env_info("has_bindhost") + +if has_bindhost or ( ( m:get(section, "force_dnstcp") or "0" ) ~= "0" ) then tcp = ns:taboption("advanced", Flag, "force_dnstcp", translate("Force TCP on DNS") ) tcp.orientation = "horizontal" function tcp.cfgvalue(self, section) local value = AbstractValue.cfgvalue(self, section) - if not DDNS.has_bindhost and value ~= "0" then + if not has_bindhost and value ~= "0" then self.description = bold_on .. font_red .. translate("DNS requests via TCP not supported") .. font_off .. "<br />" .. translate("please disable") .. " !" .. bold_off @@ -1195,7 +1216,7 @@ if DDNS.has_bindhost or ( ( m:get(section, "force_dnstcp") or "0" ) ~= "0" ) the return value end function tcp.validate(self, value) - if (value == "1" and DDNS.has_bindhost ) or value == "0" then + if (value == "1" and has_bindhost ) or value == "0" then return value end return nil, err_tab_adv(self) .. translate("DNS requests via TCP not supported") @@ -1204,13 +1225,16 @@ end -- IPv4 + IPv6 - proxy -- ##################################################### -- optional Proxy to use for http/https requests [user:password@]proxyhost[:port] -if DDNS.has_proxy or ( ( m:get(section, "proxy") or "" ) ~= "" ) then + +local has_proxy = DDNS.env_info("has_proxy") + +if has_proxy or ( ( m:get(section, "proxy") or "" ) ~= "" ) then pxy = ns:taboption("advanced", Value, "proxy", translate("PROXY-Server") ) pxy.placeholder="user:password@myproxy.lan:8080" function pxy.cfgvalue(self, section) local value = AbstractValue.cfgvalue(self, section) - if not DDNS.has_proxy and value ~= "" then + if not has_proxy and value ~= "" then self.description = bold_on .. font_red .. translate("PROXY-Server not supported") .. font_off .. "<br />" .. translate("please remove entry") .. "!" .. bold_off @@ -1226,10 +1250,10 @@ if DDNS.has_proxy or ( ( m:get(section, "proxy") or "" ) ~= "" ) then -- if .datatype is set, then it is checked before calling this function if not value or (#value == 0) then return "" -- ignore on empty - elseif DDNS.has_proxy then + elseif has_proxy then local ipv6 = usev6:formvalue(section) or "0" local force = fipv:formvalue(section) or "0" - local command = CRTL.luci_helper .. [[ -]] + local command = CTRL.luci_helper .. [[ -]] if (ipv6 == 1) then command = command .. [[6]] end if (force == 1) then command = command .. [[f]] end command = command .. [[p ]] .. value .. [[ -- verify_proxy]] diff --git a/applications/luci-app-ddns/luasrc/model/cbi/ddns/hints.lua b/applications/luci-app-ddns/luasrc/model/cbi/ddns/hints.lua index df39a3a7e5..419201548b 100644 --- a/applications/luci-app-ddns/luasrc/model/cbi/ddns/hints.lua +++ b/applications/luci-app-ddns/luasrc/model/cbi/ddns/hints.lua @@ -48,7 +48,7 @@ if not SYS.init.enabled("ddns") then end -- No IPv6 support -if not DDNS.has_ipv6 then +if not DDNS.env_info("has_ipv6") then local v6 = s:option(DummyValue, "_no_ipv6") v6.titleref = 'http://www.openwrt.org" target="_blank' v6.rawhtml = true @@ -60,7 +60,7 @@ if not DDNS.has_ipv6 then end -- No HTTPS support -if not DDNS.has_ssl then +if not DDNS.env_info("has_ssl") then local sl = s:option(DummyValue, "_no_https") sl.titleref = DISP.build_url("admin", "system", "packages") sl.rawhtml = true @@ -74,7 +74,7 @@ if not DDNS.has_ssl then end -- No bind_network -if not DDNS.has_bindnet then +if not DDNS.env_info("has_bindnet") then local bn = s:option(DummyValue, "_no_bind_network") bn.titleref = DISP.build_url("admin", "system", "packages") bn.rawhtml = true @@ -90,7 +90,7 @@ if not DDNS.has_bindnet then end -- currently only cURL possibly without proxy support -if not DDNS.has_proxy then +if not DDNS.env_info("has_proxy") then local px = s:option(DummyValue, "_no_proxy") px.titleref = DISP.build_url("admin", "system", "packages") px.rawhtml = true @@ -104,7 +104,7 @@ if not DDNS.has_proxy then end -- "Force IP Version not supported" -if not DDNS.has_forceip then +if not DDNS.env_info("has_forceip") then local fi = s:option(DummyValue, "_no_force_ip") fi.titleref = DISP.build_url("admin", "system", "packages") fi.rawhtml = true @@ -112,11 +112,11 @@ if not DDNS.has_forceip then translate("Force IP Version not supported") .. bold_off local value = translate("BusyBox's nslookup and Wget do not support to specify " .. "the IP version to use for communication with DDNS Provider!") - if not (DDNS.has_wgetssl or DDNS.has_curl or DDNS.has_fetch) then + if not (DDNS.env_info("has_wgetssl") or DDNS.env_info("has_curl") or DDNS.env_info("has_fetch")) then value = value .. "<br />- " .. translate("You should install 'wget' or 'curl' or 'uclient-fetch' package.") end - if not DDNS.has_bindhost then + if not DDNS.env_info("has_bindhost") then value = value .. "<br />- " .. translate("You should install 'bind-host' or 'knot-host' or 'drill' package for DNS requests.") end @@ -124,7 +124,7 @@ if not DDNS.has_forceip then end -- "DNS requests via TCP not supported" -if not DDNS.has_bindhost then +if not DDNS.env_info("has_bindhost") then local dt = s:option(DummyValue, "_no_dnstcp") dt.titleref = DISP.build_url("admin", "system", "packages") dt.rawhtml = true @@ -137,7 +137,7 @@ if not DDNS.has_bindhost then end -- nslookup compiled with musl produce problems when using -if not DDNS.has_dnsserver then +if not DDNS.env_info("has_dnsserver") then local ds = s:option(DummyValue, "_no_dnsserver") ds.titleref = DISP.build_url("admin", "system", "packages") ds.rawhtml = true @@ -151,7 +151,7 @@ if not DDNS.has_dnsserver then end -- certificates installed -if DDNS.has_ssl and not DDNS.has_cacerts then +if DDNS.env_info("has_ssl") and not DDNS.env_info("has_cacerts") then local ca = s:option(DummyValue, "_no_certs") ca.titleref = DISP.build_url("admin", "system", "packages") ca.rawhtml = true diff --git a/applications/luci-app-ddns/luasrc/model/cbi/ddns/overview.lua b/applications/luci-app-ddns/luasrc/model/cbi/ddns/overview.lua index 6ba3ea0dd8..11f73800ea 100644 --- a/applications/luci-app-ddns/luasrc/model/cbi/ddns/overview.lua +++ b/applications/luci-app-ddns/luasrc/model/cbi/ddns/overview.lua @@ -1,21 +1,20 @@ --- Copyright 2014-2016 Christian Schoenebeck <christian dot schoenebeck at gmail dot com> +-- Copyright 2014-2018 Christian Schoenebeck <christian dot schoenebeck at gmail dot com> -- Licensed to the public under the Apache License 2.0. -local NXFS = require "nixio.fs" local DISP = require "luci.dispatcher" local HTTP = require "luci.http" local SYS = require "luci.sys" local CTRL = require "luci.controller.ddns" -- this application's controller local DDNS = require "luci.tools.ddns" -- ddns multiused functions -local show_hints = not (DDNS.has_ipv6 -- IPv6 support - and DDNS.has_ssl -- HTTPS support - and DDNS.has_proxy -- Proxy support - and DDNS.has_bindhost -- DNS TCP support - and DDNS.has_forceip -- Force IP version - and DDNS.has_dnsserver -- DNS server support - and DDNS.has_bindnet -- Bind to network/interface - and DDNS.has_cacerts -- certificates installed at /etc/ssl/certs +local show_hints = not (DDNS.env_info("has_ipv6") -- IPv6 support + and DDNS.env_info("has_ssl") -- HTTPS support + and DDNS.env_info("has_proxy") -- Proxy support + and DDNS.env_info("has_bindhost") -- DNS TCP support + and DDNS.env_info("has_forceip") -- Force IP version + and DDNS.env_info("has_dnsserver") -- DNS server support + and DDNS.env_info("has_bindnet") -- Bind to network/interface + and DDNS.env_info("has_cacerts") -- certificates installed at /etc/ssl/certs ) local not_enabled = not SYS.init.enabled("ddns") local need_update = not CTRL.service_ok() @@ -122,22 +121,29 @@ function dom.set_one(self, section) end end function dom.set_two(self, section) - local lookup_host = self.map:get(section, "lookup_host") or "" - if lookup_host == "" then return "" end - local dnsserver = self.map:get(section, "dnsserver") or "" - local use_ipv6 = tonumber(self.map:get(section, "use_ipv6") or 0) - local force_ipversion = tonumber(self.map:get(section, "force_ipversion") or 0) - local force_dnstcp = tonumber(self.map:get(section, "force_dnstcp") or 0) - local is_glue = tonumber(self.map:get(section, "is_glue") or 0) - local command = CTRL.luci_helper .. [[ -]] - if (use_ipv6 == 1) then command = command .. [[6]] end - if (force_ipversion == 1) then command = command .. [[f]] end - if (force_dnstcp == 1) then command = command .. [[t]] end - if (is_glue == 1) then command = command .. [[g]] end - command = command .. [[l ]] .. lookup_host - if (#dnsserver > 0) then command = command .. [[ -d ]] .. dnsserver end - command = command .. [[ -- get_registered_ip]] - local ip = SYS.exec(command) + local chk_sec = DDNS.calc_seconds( + tonumber(self.map:get(section, "check_interval")) or 10, + self.map:get(section, "check_unit") or "minutes" ) + local ip = DDNS.get_regip(section, chk_sec) + if ip == "NOFILE" then + local lookup_host = self.map:get(section, "lookup_host") or "" + if lookup_host == "" then return "" end + local dnsserver = self.map:get(section, "dnsserver") or "" + local use_ipv6 = tonumber(self.map:get(section, "use_ipv6") or 0) + local force_ipversion = tonumber(self.map:get(section, "force_ipversion") or 0) + local force_dnstcp = tonumber(self.map:get(section, "force_dnstcp") or 0) + local is_glue = tonumber(self.map:get(section, "is_glue") or 0) + local command = CTRL.luci_helper .. [[ -]] + if (use_ipv6 == 1) then command = command .. [[6]] end + if (force_ipversion == 1) then command = command .. [[f]] end + if (force_dnstcp == 1) then command = command .. [[t]] end + if (is_glue == 1) then command = command .. [[g]] end + command = command .. [[l ]] .. lookup_host + command = command .. [[ -S ]] .. section + if (#dnsserver > 0) then command = command .. [[ -d ]] .. dnsserver end + command = command .. [[ -- get_registered_ip]] + ip = SYS.exec(command) + end if ip == "" then ip = translate("no data") end return ip end diff --git a/applications/luci-app-ddns/luasrc/tools/ddns.lua b/applications/luci-app-ddns/luasrc/tools/ddns.lua index 209d9c3a41..57913a51fe 100755 --- a/applications/luci-app-ddns/luasrc/tools/ddns.lua +++ b/applications/luci-app-ddns/luasrc/tools/ddns.lua @@ -1,40 +1,138 @@ --- Copyright 2014-2016 Christian Schoenebeck <christian dot schoenebeck at gmail dot com> +-- Copyright 2014-2018 Christian Schoenebeck <christian dot schoenebeck at gmail dot com> -- Licensed to the public under the Apache License 2.0. module("luci.tools.ddns", package.seeall) local NX = require "nixio" local NXFS = require "nixio.fs" -local OPKG = require "luci.model.ipkg" local UCI = require "luci.model.uci" local SYS = require "luci.sys" -local UTIL = require "luci.util" -local function _check_certs() - local _, v = NXFS.glob("/etc/ssl/certs/*.crt") - if ( v == 0 ) then _, v = NXFS.glob("/etc/ssl/certs/*.pem") end - return (v > 0) -end +function env_info(type) -has_wgetssl = (SYS.call( [[which wget-ssl >/dev/null 2>&1]] ) == 0) -- and true or nil -has_curl = (SYS.call( [[which curl >/dev/null 2>&1]] ) == 0) -has_curlssl = (SYS.call( [[$(which curl) -V 2>&1 | grep "Protocols:" | grep -qF "https"]] ) ~= 0) -has_curlpxy = (SYS.call( [[grep -i "all_proxy" /usr/lib/libcurl.so* >/dev/null 2>&1]] ) == 0) -has_fetch = (SYS.call( [[which uclient-fetch >/dev/null 2>&1]] ) == 0) -has_fetchssl = NXFS.access("/lib/libustream-ssl.so") -has_bbwget = (SYS.call( [[$(which wget) -V 2>&1 | grep -iqF "busybox"]] ) == 0) -has_bindhost = (SYS.call( [[which host >/dev/null 2>&1]] ) == 0) - or (SYS.call( [[which khost >/dev/null 2>&1]] ) == 0) - or (SYS.call( [[which drill >/dev/null 2>&1]] ) == 0) -has_hostip = (SYS.call( [[which hostip >/dev/null 2>&1]] ) == 0) -has_nslookup = (SYS.call( [[$(which nslookup) localhost 2>&1 | grep -qF "(null)"]] ) ~= 0) -has_ipv6 = (NXFS.access("/proc/net/ipv6_route") and NXFS.access("/usr/sbin/ip6tables")) -has_ssl = (has_wgetssl or has_curlssl or (has_fetch and has_fetchssl)) -has_proxy = (has_wgetssl or has_curlpxy or has_fetch or has_bbwget) -has_forceip = (has_wgetssl or has_curl or has_fetch) -- only really needed for transfer -has_dnsserver = (has_bindhost or has_hostip or has_nslookup) -has_bindnet = (has_wgetssl or has_curl) -has_cacerts = _check_certs() + if ( type == "has_ssl" ) or ( type == "has_proxy" ) or ( type == "has_forceip" ) + or ( type == "has_bindnet" ) or ( type == "has_fetch" ) + or ( type == "has_wgetssl" ) or ( type == "has_curl" ) + or ( type == "has_curlssl" ) or ( type == "has_curlpxy" ) + or ( type == "has_fetchssl" ) or ( type == "has_bbwget" ) then + + local function has_wgetssl() + return (SYS.call( [[which wget-ssl >/dev/null 2>&1]] ) == 0) -- and true or nil + end + + local function has_curlssl() + return (SYS.call( [[$(which curl) -V 2>&1 | grep "Protocols:" | grep -qF "https"]] ) ~= 0) + end + + local function has_fetch() + return (SYS.call( [[which uclient-fetch >/dev/null 2>&1]] ) == 0) + end + + local function has_fetchssl() + return NXFS.access("/lib/libustream-ssl.so") + end + + local function has_curl() + return (SYS.call( [[which curl >/dev/null 2>&1]] ) == 0) + end + + local function has_curlpxy() + return (SYS.call( [[grep -i "all_proxy" /usr/lib/libcurl.so* >/dev/null 2>&1]] ) == 0) + end + + local function has_bbwget() + return (SYS.call( [[$(which wget) -V 2>&1 | grep -iqF "busybox"]] ) == 0) + end + + if type == "has_wgetssl" then + return has_wgetssl() + + elseif type == "has_curl" then + return has_curl() + + elseif type == "has_curlssl" then + return has_curlssl() + + elseif type == "has_curlpxy" then + return has_curlpxy() + + elseif type == "has_fetch" then + return has_fetch() + + elseif type == "has_fetchssl" then + return has_fetchssl() + + elseif type == "has_bbwget" then + return has_bbwget() + + elseif type == "has_ssl" then + if has_wgetssl() then return true end + if has_curlssl() then return true end + if (has_fetch() and has_fetchssl()) then return true end + return false + + elseif type == "has_proxy" then + if has_wgetssl() then return true end + if has_curlpxy() then return true end + if has_fetch() then return true end + if has_bbwget() then return true end + return false + + elseif type == "has_forceip" then + if has_wgetssl() then return true end + if has_curl() then return true end + if has_fetch() then return true end -- only really needed for transfer + return false + + elseif type == "has_bindnet" then + if has_curl() then return true end + if has_wgetssl() then return true end + return false + end + + elseif ( type == "has_dnsserver" ) or ( type == "has_bindhost" ) or ( type == "has_hostip" ) or ( type == "has_nslookup" ) then + local function has_bindhost() + if (SYS.call( [[which host >/dev/null 2>&1]] ) == 0) then return true end + if (SYS.call( [[which host >/dev/null 2>&1]] ) == 0) then return true end + if (SYS.call( [[which khost >/dev/null 2>&1]] ) == 0) then return true end + if (SYS.call( [[which drill >/dev/null 2>&1]] ) == 0) then return true end + return false + end + + local function has_hostip() + return (SYS.call( [[which hostip >/dev/null 2>&1]] ) == 0) + end + + local function has_nslookup() + return (SYS.call( [[$(which nslookup) localhost 2>&1 | grep -qF "(null)"]] ) ~= 0) + end + + if type == "has_bindhost" then + return has_bindhost() + elseif type == "has_hostip" then + return has_hostip() + elseif type == "has_nslookup" then + return has_nslookup() + elseif tyep == "has_dnsserver" then + if has_bindhost() then return true end + if has_hostip() then return true end + if has_nslookup() then return true end + return false + end + + elseif type == "has_ipv6" then + return (NXFS.access("/proc/net/ipv6_route") and NXFS.access("/usr/sbin/ip6tables")) + + elseif type == "has_cacerts" then + --old _check_certs() local function + local _, v = NXFS.glob("/etc/ssl/certs/*.crt") + if ( v == 0 ) then _, v = NXFS.glob("/etc/ssl/certs/*.pem") end + return (v > 0) + else + return + end + +end -- function to calculate seconds from given interval and unit function calc_seconds(interval, unit) @@ -74,6 +172,23 @@ function get_lastupd(section) return etime end +-- read registered IP from [section].ip file +function get_regip(section, chk_sec) + local uci = UCI.cursor() + local rdir = uci:get("ddns", "global", "ddns_rundir") or "/var/run/ddns" + local ip = "NOFILE" + if NXFS.access("%s/%s.ip" % { rdir, section }) then + local ftime = NXFS.stat("%s/%s.ip" % { rdir, section }, "ctime") or 0 + local otime = os.time() + -- give ddns-scripts time (9 sec) to update file + if otime < (ftime + chk_sec + 9) then + ip = NXFS.readfile("%s/%s.ip" % { rdir, section }) + end + end + uci:unload("ddns") + return ip +end + -- read PID from run file and verify if still running function get_pid(section) local uci = UCI.cursor() diff --git a/applications/luci-app-ddns/luasrc/view/ddns/global_value.htm b/applications/luci-app-ddns/luasrc/view/ddns/global_value.htm index 23ec059170..3cbb66b4bf 100644 --- a/applications/luci-app-ddns/luasrc/view/ddns/global_value.htm +++ b/applications/luci-app-ddns/luasrc/view/ddns/global_value.htm @@ -25,9 +25,8 @@ /> <br /> <div class="cbi-value-description"> - <span class="cbi-value-helpicon"><img src="<%=resource%>/cbi/help.gif" alt="<%:help%>" /><%=self.description%></span> - <br /> - <span id="<%=cbid%>.help" class="cbi-value-helpicon"><%:Current setting%>: <strong><%=self.date_string%></strong></span> + <span class="cbi-value-helpicon"><img src="<%=resource%>/cbi/help.gif" alt="<%:help%>" /></span><%=self.description%> + <br /><%:Current setting%>: <strong><%=self.date_string%></strong> </div> <!-- div class="cbi-value-description" --> </div> <!-- div class="cbi-value-field" --> </div> <!-- div class="cbi-value cbi-value-last" --> diff --git a/applications/luci-app-ddns/luasrc/view/ddns/system_status.htm b/applications/luci-app-ddns/luasrc/view/ddns/system_status.htm index 5bdcb03e73..7fcb882a15 100644 --- a/applications/luci-app-ddns/luasrc/view/ddns/system_status.htm +++ b/applications/luci-app-ddns/luasrc/view/ddns/system_status.htm @@ -1,4 +1,3 @@ - <!-- ++ BEGIN ++ Dynamic DNS ++ system_status.htm ++ --> <script type="text/javascript">//<![CDATA[ // helper to move status data to the relevant @@ -10,8 +9,8 @@ if ( !(tbl) ) { return; } // clear all rows - while (tbl.rows.length > 1) - tbl.deleteRow(1); + while (tbl.firstElementChild !== tbl.lastElementChild) + tbl.removeChild(tbl.lastElementChild); // variable for Modulo-Division use to set cbi-rowstyle-? (0 or 1) var i = -1; @@ -21,22 +20,22 @@ if (data[0].enabled == 0) { var txt = '<strong><font color="red"><%:DDNS Autostart disabled%></font>' ; var url = '<a href="' + data[0].url_up + '"><%:enable here%></a></strong>' ; - var tr = tbl.insertRow(-1); - tr.className = 'cbi-section-table-row cbi-rowstyle-' + (((j + i) % 2) + 1); - var td = tr.insertCell(-1); - td.colSpan = 2 ; - td.innerHTML = txt + " - " + url - tr.insertCell(-1).colSpan = 3 ; + tbl.appendChild(E('<div class="tr cbi-section-table-row cbi-rowstyle-%d">'.format(((j + i) % 2) + 1), [ + E('<div class="td">', [ txt," - ", url ]) + ])); i++ ; } + var configuration; + var next_update; + var lookup; + var registered_ip; + var network; + for( j = 1; j < data.length; j++ ) { - var tr = tbl.insertRow(-1); - tr.className = 'cbi-section-table-row cbi-rowstyle-' + (((j + i) % 2) + 1) ; - // configuration - tr.insertCell(-1).innerHTML = '<strong>' + data[j].section + '</strong>' ; + configuration = data[j].section; // pid // data[j].pid ignored here @@ -47,66 +46,74 @@ // next update switch (data[j].datenext) { case "_empty_": - tr.insertCell(-1).innerHTML = '<em><%:Unknown error%></em>' ; + next_update = '<em><%:Unknown error%></em>'; break; case "_stopped_": - tr.insertCell(-1).innerHTML = '<em><%:Stopped%></em>' ; + next_update = '<em><%:Stopped%></em>'; break; case "_disabled_": - tr.insertCell(-1).innerHTML = '<em><%:Disabled%></em>' ; + next_update = '<em><%:Disabled%></em>'; break; case "_noupdate_": - tr.insertCell(-1).innerHTML = '<em><%:Update error%></em>' ; + next_update = '<em><%:Update error%></em>'; break; case "_runonce_": - tr.insertCell(-1).innerHTML = '<em><%:Run once%></em>' ; + next_update = '<em><%:Run once%></em>'; break; case "_verify_": - tr.insertCell(-1).innerHTML = '<em><%:Verify%></em>'; + next_update = '<em><%:Verify%></em>'; break; default: - tr.insertCell(-1).innerHTML = data[j].datenext ; + next_update = data[j].datenext; break; } // lookup if (data[j].lookup == "_nolookup_") - tr.insertCell(-1).innerHTML = '<em><%:config error%></em>'; + lookup = '<em><%:config error%></em>'; else - tr.insertCell(-1).innerHTML = data[j].lookup; + lookup = data[j].lookup; // registered IP switch (data[j].reg_ip) { case "_nolookup_": - tr.insertCell(-1).innerHTML = '<em><%:Config error%></em>'; + registered_ip = '<em><%:config error%></em>'; break; case "_nodata_": - tr.insertCell(-1).innerHTML = '<em><%:No data%></em>'; + registered_ip = '<em><%:No data%></em>'; break; case "_noipv6_": - tr.insertCell(-1).innerHTML = '<em><%:IPv6 not supported%></em>'; + registered_ip = '<em><%:IPv6 not supported%></em>'; break; default: - tr.insertCell(-1).innerHTML = data[j].reg_ip; + registered_ip = data[j].reg_ip; break; } // monitored interface if (data[j].iface == "_nonet_") - tr.insertCell(-1).innerHTML = '<em><%:Config error%></em>'; + network = '<em><%:Config error%></em>'; else - tr.insertCell(-1).innerHTML = data[j].iface; + network = data[j].iface; + + tbl.appendChild(E('<div class="tr cbi-section-table-row cbi-rowstyle-%d">'.format(((j + i) % 2) + 1), [ + E('<div class="td">', [ E('<strong>', configuration) ]), + E('<div class="td">', next_update), + E('<div class="td">', lookup), + E('<div class="td">', registered_ip), + E('<div class="td">', network) + ])); } - if (tbl.rows.length == 1 || (data[0].enabled == 0 && tbl.rows.length == 2) ) { + if (tbl.firstElementChild === tbl.lastElementChild || (data[0].enabled == 0 && tbl.childNodes.length == 2) ) { var br = '<br />'; - if (tbl.rows.length > 1) + var msg = '<%:There is no service configured.%>'; + if (tbl.firstElementChild !== tbl.lastElementChild) br = ''; - var tr = tbl.insertRow(-1); - tr.className = "cbi-section-table-row"; - var td = tr.insertCell(-1); - td.colSpan = 5; - td.innerHTML = '<em>' + br + '<%:There is no service configured.%></em>' ; + msg = br + msg; + tbl.appendChild(E('<div class="tr cbi-section-table-row">', [ + E('<div class="td">', [ E('<em>', msg) ]) + ])); } } @@ -128,17 +135,17 @@ <fieldset class="cbi-section" id="ddns_status_section"> <legend><a href="<%=url([[admin]], [[services]], [[ddns]])%>"><%:Dynamic DNS%></a></legend> - <table class="cbi-section-table" id="ddns_status_table"> - <tr class="cbi-section-table-titles"> - <th class="cbi-section-table-cell"><%:Configuration%></th> - <th class="cbi-section-table-cell"><%:Next Update%></th> - <th class="cbi-section-table-cell"><%:Lookup Hostname%></th> - <th class="cbi-section-table-cell"><%:Registered IP%></th> - <th class="cbi-section-table-cell"><%:Network%></th> - </tr> - <tr class="cbi-section-table-row"> - <td colspan="5"><em><br /><%:Collecting data...%></em></td> - </tr> - </table> + <div class="table cbi-section-table" id="ddns_status_table"> + <div class="tr cbi-section-table-titles"> + <div class="th cbi-section-table-cell"><%:Configuration%></div> + <div class="th cbi-section-table-cell"><%:Next Update%></div> + <div class="th cbi-section-table-cell"><%:Lookup Hostname%></div> + <div class="th cbi-section-table-cell"><%:Registered IP%></div> + <div class="th cbi-section-table-cell"><%:Network%></div> + </div> + <div class="tr cbi-section-table-row"> + <div class="td"><em><br /><%:Collecting data...%></em></div> + </div> + </div> </fieldset> <!-- ++ END ++ Dynamic DNS ++ system_status.htm ++ --> diff --git a/applications/luci-app-ddns/po/it/ddns.po b/applications/luci-app-ddns/po/it/ddns.po index f59d053e71..4b8d2f844e 100644 --- a/applications/luci-app-ddns/po/it/ddns.po +++ b/applications/luci-app-ddns/po/it/ddns.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: luci-app-ddns 2.4.0-1\n" "POT-Creation-Date: 2016-01-30 11:07+0100\n" -"PO-Revision-Date: 2013-02-03 13:53+0200\n" -"Last-Translator: Francesco <3gasas@gmail.com>\n" +"PO-Revision-Date: 2017-09-06 01:53+0200\n" +"Last-Translator: Bubu83 <bubu83@gmail.com>\n" "Language-Team: \n" "Language: it\n" "MIME-Version: 1.0\n" @@ -22,160 +22,182 @@ msgid "-- default --" msgstr "" msgid "Advanced Settings" -msgstr "" +msgstr "Opzioni Avanzate" msgid "Allow non-public IP's" -msgstr "" +msgstr "Consenti IP non pubblici" msgid "Applying changes" -msgstr "" +msgstr "Applico i cambiamenti" msgid "Basic Settings" -msgstr "" +msgstr "Opzioni di Base" msgid "" "Below a list of configuration tips for your system to run Dynamic DNS " "updates without limitations" msgstr "" +"Sotto c'è una lista di consigli di configurazione per il tuo sistema per eseguire " +"aggiornamenti di Dynamic DNS senza limitazioni" msgid "" "Below is a list of configured DDNS configurations and their current state." msgstr "" +"Sotto c'è una lista delle configurazioni DDNS configurate e il loro stato attuale." msgid "Bind Network" -msgstr "" +msgstr "Collega Rete" msgid "Binding to a specific network not supported" -msgstr "" +msgstr "Collegamento a una specifica rete non supportato" msgid "" "BusyBox's nslookup and Wget do not support to specify the IP version to use " "for communication with DDNS Provider!" msgstr "" +"Nslookup di BusyBox e Wget non supportano lo specificare la versione IP da usare " +"per la comunicazione con il Provider DDNS!" msgid "" "BusyBox's nslookup and hostip do not support to specify to use TCP instead " "of default UDP when requesting DNS server!" msgstr "" +"Nslookup di BusyBox e hostip non supportano lo specificare l'uso di TCP invece " +"di UDP di default quando richiedono il server DNS!" msgid "" "BusyBox's nslookup in the current compiled version does not handle given DNS " "Servers correctly!" msgstr "" +"Nslookup di BusyBox nella versione compilata corrente non gestisce i dati Server " +"DNS correttamente!" msgid "Casual users should not change this setting" -msgstr "" +msgstr "Gli utenti casuali non dovrebbero cambiare questa opzione" msgid "Change provider" -msgstr "" +msgstr "Cambia provider" msgid "Check Interval" -msgstr "" +msgstr "Controlla Intervallo" msgid "Collecting data..." -msgstr "" +msgstr "Raccogliendo dati..." msgid "Config error" -msgstr "" +msgstr "Errore di configurazione" msgid "Configuration" -msgstr "" +msgstr "Configurazione" msgid "" "Configure here the details for all Dynamic DNS services including this LuCI " "application." msgstr "" +"Configura qui i dettagli per tutti i servizi Dynamic DNS inclusa questa " +"applicazione LuCI." msgid "Configure here the details for selected Dynamic DNS service." -msgstr "" +msgstr "Configura qui i dettagli per il servizio Dynamic DNS selezionato." msgid "Current setting" -msgstr "" +msgstr "Impostazione corrente" msgid "" "Currently DDNS updates are not started at boot or on interface events.<br /" ">This is the default if you run DDNS scripts by yourself (i.e. via cron with " "force_interval set to '0')" msgstr "" +"Attualmente gli aggiornamenti DDNS non si avviano al boot o per eventi " +"dell'interfaccia. <br />Questo è di default se esegui gli script DDNS per conto tuo " +" (es. usando cron con force_interval impostato a '0')" msgid "" "Currently DDNS updates are not started at boot or on interface events.<br /" ">You can start/stop each configuration here. It will run until next reboot." msgstr "" +"Attualmente gli aggiornamenti DDNS non si avviano al boot o per eventi " +"dell'interfaccia. <br />Puoi avviare/fermare ogni configurazione qui. Verrà eseguita " +"fino al prossimo riavvio." msgid "Custom update script to be used for updating your DDNS Provider." -msgstr "" +msgstr "Script aggiornamento personalizzato da usare per aggiornare il tuo DDNS Provider." msgid "Custom update-URL" msgstr "URL di aggiornamento personalizzato" msgid "Custom update-script" -msgstr "" +msgstr "Script di aggiornamento personalizzato" msgid "DDNS Autostart disabled" -msgstr "" +msgstr "Autoavvio DDNS disabilitato" msgid "DDNS Client Configuration" -msgstr "" +msgstr "Configurazione Cliente DDNS" msgid "DDNS Client Documentation" -msgstr "" +msgstr "Documentazione Cliente DDNS" msgid "DDNS Service provider" -msgstr "" +msgstr "Provider del Servizio DDNS" msgid "DNS requests via TCP not supported" -msgstr "" +msgstr "Richieste DNS via TCP non supportate" msgid "DNS-Server" -msgstr "" +msgstr "Server DNS" msgid "Date format" -msgstr "" +msgstr "Formato Data" msgid "Defines the Web page to read systems IPv4-Address from" -msgstr "" +msgstr "Definisce la pagina WEB che legge l'indirizzo IPv4 dei sistemi" msgid "Defines the Web page to read systems IPv6-Address from" -msgstr "" +msgstr "Definisce la pagina WEB che legge l'indirizzo IPv6 dei sistemi" msgid "Defines the interface to read systems IP-Address from" -msgstr "" +msgstr "Definisce l'interfaccia che legge l'indirizzo IP dei sistemi" msgid "Defines the network to read systems IPv4-Address from" -msgstr "" +msgstr "Definisce la rete che legge l'indirizzo IPv4 dei sistemi" msgid "Defines the network to read systems IPv6-Address from" -msgstr "" +msgstr "Definisce la rete che legge l'indirizzo IPv6 dei sistemi" msgid "" "Defines the source to read systems IPv4-Address from, that will be send to " "the DDNS provider" msgstr "" +"Definisce la sorgente che legge l'indirizzo IPv4 dei sistemi, che sarà mandata " +"al provider DDNS" msgid "" "Defines the source to read systems IPv6-Address from, that will be send to " "the DDNS provider" msgstr "" +"Definisce la sorgente che legge l'indirizzo IPv6 dei sistemi, che sarà mandata " +"al provider DDNS" msgid "Defines which IP address 'IPv4/IPv6' is send to the DDNS provider" -msgstr "" +msgstr "Definisce quale indirizzo IP 'IPv4/IPv6' è mandato al provider DDNS" msgid "Details for" -msgstr "" +msgstr "Dettagli per" msgid "Directory contains Log files for each running section" -msgstr "" +msgstr "Directory che contiene i file di registro per ogni sezione avviata" msgid "" "Directory contains PID and other status information for each running section" msgstr "" +"Directory che contiene il PID e altre informazioni di stato per ogni seziona avviata" msgid "Disabled" -msgstr "" +msgstr "Disabilitato" msgid "Domain" -msgstr "" +msgstr "Dominio" msgid "Dynamic DNS" msgstr "DNS Dinamico" @@ -188,124 +210,136 @@ msgstr "" "statico anche nel caso in cui tu disponga di un indirizzo IP dinamico." msgid "Enable secure communication with DDNS provider" -msgstr "" +msgstr "Abilita la comunicazione sicura con il provider DDNS" msgid "Enabled" -msgstr "" +msgstr "Abilitato" msgid "Error" -msgstr "" +msgstr "Errore" msgid "Error Retry Counter" -msgstr "" +msgstr "Conteggio errore di riprova" msgid "Error Retry Interval" -msgstr "" +msgstr "Intervallo errore di riprova" msgid "Event Network" -msgstr "" +msgstr "Network Evento" msgid "File" msgstr "" msgid "File not found" -msgstr "" +msgstr "File non trovato" msgid "File not found or empty" -msgstr "" +msgstr "File non trovato o vuoto" msgid "" "Follow this link<br />You will find more hints to optimize your system to " "run DDNS scripts with all options" msgstr "" +"Segui questo collegamento<br />Troverai più aiuti per ottimizzare il tuo sistema " +"a eseguire script DDNS con tutte le opzioni" msgid "For detailed information about parameter settings look here." -msgstr "" +msgstr "Per informazioni dettagliate sui parametri opzionali guarda qui." msgid "For supported codes look here" -msgstr "" +msgstr "Per i codici supportati guarda qui" msgid "Force IP Version" -msgstr "" +msgstr "Forza Versione IP" msgid "Force IP Version not supported" -msgstr "" +msgstr "Forza Versione IP non supportato" msgid "Force Interval" -msgstr "" +msgstr "Forza Intervallo" msgid "Force TCP on DNS" -msgstr "" +msgstr "Forza TCP su DNS" msgid "Forced IP Version don't matched" -msgstr "" +msgstr "La Versione IP forzata non corrisponde" msgid "Format" -msgstr "" +msgstr "Formato" msgid "Format: IP or FQDN" -msgstr "" +msgstr "Formato: IP o FQDN" msgid "" "GNU Wget will use the IP of given network, cURL will use the physical " "interface." msgstr "" +"GNU Wget userà l'IP della rete data, cURL userà l'interfaccia " +"fisica." msgid "Global Settings" -msgstr "" +msgstr "Opzioni Globali" msgid "HTTPS not supported" -msgstr "" +msgstr "HTTPS non supportato" msgid "Hints" -msgstr "" +msgstr "Suggerimenti" msgid "Hostname/FQDN to validate, if IP update happen or necessary" -msgstr "" +msgstr "Indirizzo/FQDN da validare, se l'aggiornamento IP avviene o è necessario" msgid "IP address source" -msgstr "" +msgstr "Sorgente indirizzo IP" msgid "IP address version" -msgstr "" +msgstr "Versione indirizzo IP" msgid "IPv4-Address" -msgstr "" +msgstr "Indirizzo IPv4" msgid "IPv6 address must be given in square brackets" -msgstr "" +msgstr "Indirizzo IPv6 deve essere dato con le parentesi quadre" msgid "" "IPv6 is currently not (fully) supported by this system<br />Please follow " "the instructions on OpenWrt's homepage to enable IPv6 support<br />or update " "your system to the latest OpenWrt Release" msgstr "" +"IPv6 non è (pienamente) supportato da questo sistema<br />Per favore segui " +"le istruzioni sul sito di OpenWrt per abilitare il supporto a IPv6<br />o aggiorna " +"il tuo sistema all'ultima Release di OpenWrt" msgid "IPv6 not supported" -msgstr "" +msgstr "IPv6 non supportato" msgid "IPv6-Address" -msgstr "" +msgstr "Indirizzo IPv6" msgid "If both cURL and GNU Wget are installed, Wget is used by default." -msgstr "" +msgstr "Se sia cURL e sia GNU Wget sono installati, Wget è usato di default." msgid "" "If this service section is disabled it could not be started.<br />Neither " "from LuCI interface nor from console" msgstr "" +"Se questa sezione del servizio è disabilitata, non può essere avviata<br />Nè " +"da interfaccia LuCI nè da console" msgid "If using secure communication you should verify server certificates!" -msgstr "" +msgstr "Se usi la comunicazione sicura dovresti verificare i certificati del server!" msgid "" "If you want to send updates for IPv4 and IPv6 you need to define two " "separate Configurations i.e. 'myddns_ipv4' and 'myddns_ipv6'" msgstr "" +"Se vuoi mandare aggiornamenti per IPv4 e IPv6, devi definire due " +"Configurazioni separate es. 'myddns_ipv4' e 'myddns_ipv6'" msgid "" "In some versions cURL/libcurl in OpenWrt is compiled without proxy support." msgstr "" +"In alcune versioni cURL/libcurl in OpenWrt è compilato senza supporto proxy." msgid "Info" msgstr "" @@ -314,6 +348,8 @@ msgid "" "Install 'ca-certificates' package or needed certificates by hand into /etc/" "ssl/certs default directory" msgstr "" +"Installa il pacchetto 'ca-certificates' o i certificati necessari " +"a mano nella directory di default /etc/ssl/certs" msgid "Interface" msgstr "Interfaccia" @@ -322,408 +358,431 @@ msgid "" "Interval to check for changed IP<br />Values below 5 minutes == 300 seconds " "are not supported" msgstr "" +"Intervallo per controllare i cambiamenti dell'IP<br />I valori sotto i 5 minuti == " +"300 secondi non sono supportati" msgid "" "Interval to force updates send to DDNS Provider<br />Setting this parameter " "to 0 will force the script to only run once<br />Values lower 'Check " "Interval' except '0' are not supported" msgstr "" +"Intervallo per forzare gli aggiornamenti da mandare al provider DDNS<br />Impostanto questo " +"parametro a 0 forzerà lo script ad eseguirsi una sola volta<br />Valori sotto 'Controllo " +"Intervallo' eccetto '0' non sono supportati" msgid "It is NOT recommended for casual users to change settings on this page." -msgstr "" +msgstr "Non è raccomandato agli utenti casuali di cambiare le opzioni in questa pagina." msgid "Last Update" -msgstr "" +msgstr "Ultimo Aggiornamento" msgid "Loading" -msgstr "" +msgstr "Caricando" msgid "Log File Viewer" -msgstr "" +msgstr "Visualizzatore Registro" msgid "Log directory" -msgstr "" +msgstr "Directory registro" msgid "Log length" -msgstr "" +msgstr "Lunghezza registro" msgid "Log to file" -msgstr "" +msgstr "Registra su file" msgid "Log to syslog" -msgstr "" +msgstr "Registra su syslog" msgid "Lookup Hostname" -msgstr "" +msgstr "Indirizzo da consultare" msgid "NOT installed" -msgstr "" +msgstr "NON installato" msgid "" "Neither GNU Wget with SSL nor cURL installed to select a network to use for " "communication." msgstr "" +"Nè GNU Wget con SSL nè cURL installati per selezionare una rete da usare per " +"comunicazione." msgid "" "Neither GNU Wget with SSL nor cURL installed to support secure updates via " "HTTPS protocol." msgstr "" +"Nè GNU Wget con SSL nè cURL installati per supportare aggiornamenti sicuri via " +"protocollo HTTPS." msgid "Network" msgstr "Rete" msgid "Network on which the ddns-updater scripts will be started" -msgstr "" +msgstr "Rete su cui lo script di aggiornamento DDNS sara avviato" msgid "Never" -msgstr "" +msgstr "Mai" msgid "Next Update" -msgstr "" +msgstr "Prossimo Aggiornamento" msgid "No certificates found" -msgstr "" +msgstr "Nessun certificato trovato" msgid "No data" -msgstr "" +msgstr "Nessuno dato" msgid "No logging" -msgstr "" +msgstr "Nessun registro" msgid "Non-public and by default blocked IP's" -msgstr "" +msgstr "Ip non pubblici e bloccati di default" msgid "Notice" -msgstr "" +msgstr "Avviso" msgid "Number of last lines stored in log files" -msgstr "" +msgstr "Numero di ultime linee memorizzato nei file registro" msgid "OPTIONAL: Force the usage of pure IPv4/IPv6 only communication." -msgstr "" +msgstr "OPZIONALE: Forza l'uso di puro IPv4/IPv6 solo comunicazione." msgid "OPTIONAL: Force the use of TCP instead of default UDP on DNS requests." -msgstr "" +msgstr "OPZIONALE: Forza l'uso del TCP invece del UDP di default per richieste DNS." msgid "OPTIONAL: Network to use for communication" -msgstr "" +msgstr "OPZIONALE: Rete da usare per comunicazione" msgid "OPTIONAL: Proxy-Server for detection and updates." -msgstr "" +msgstr "OPZIONALE: Server Proxy per rivelazioni e aggiornamenti." msgid "OPTIONAL: Use non-default DNS-Server to detect 'Registered IP'." -msgstr "" +msgstr "OPZIONALE: Usa Server DNS non di default per individuare 'IP Registrati'." msgid "On Error the script will retry the failed action after given time" -msgstr "" +msgstr "Ad Errore lo script riproverà l'azione fallita dopo il tempo dato" msgid "On Error the script will stop execution after given number of retrys" -msgstr "" +msgstr "Ad Errore lo script fermerà l'esecuzione dopo il numero di tentativi dati" msgid "OpenWrt Wiki" msgstr "" msgid "Optional Encoded Parameter" -msgstr "" +msgstr "Parametro Codificato Opzionale" msgid "Optional Parameter" -msgstr "" +msgstr "Parametro Opzionale" msgid "Optional: Replaces [PARAMENC] in Update-URL (URL-encoded)" -msgstr "" +msgstr "Opzionale: Sostituisci [PARAMENC] nell'URL di aggiornamento (URL codificato)" msgid "Optional: Replaces [PARAMOPT] in Update-URL (NOT URL-encoded)" -msgstr "" +msgstr "Opzionale: Sostituisci [PARAMOPT] nell'URL di aggiornamento (URL NON codificato)" msgid "Overview" -msgstr "" +msgstr "Riassunto" msgid "PROXY-Server" -msgstr "" +msgstr "Server PROXY" msgid "PROXY-Server not supported" -msgstr "" +msgstr "SERVER PROXY non supportato" msgid "Password" msgstr "Password" msgid "Path to CA-Certificate" -msgstr "" +msgstr "Percorso per Certificato CA" msgid "Please [Save & Apply] your changes first" -msgstr "" +msgstr "Per favore [Salva & Applica] prima i cambiamenti" msgid "Please press [Read] button" -msgstr "" +msgstr "Per favore premi il pulsante [Leggi]" msgid "Please update to the current version!" -msgstr "" +msgstr "Per favore aggiorna alla versione corrente!" msgid "Process ID" -msgstr "" +msgstr "ID del Processo" msgid "Read / Reread log file" -msgstr "" +msgstr "Leggi / Rileggi registro" msgid "Really change DDNS provider?" -msgstr "" +msgstr "Cambiare provider DDNS veramente?" msgid "Registered IP" -msgstr "" +msgstr "IP Registrato" msgid "Replaces [DOMAIN] in Update-URL" -msgstr "" +msgstr "Sostituisci [DOMAIN] nell'URL di aggiornamento" msgid "Replaces [PASSWORD] in Update-URL (URL-encoded)" -msgstr "" +msgstr "Sostituisci [PASSWORD] nell'URL di aggiornamento (URL codificato)" msgid "Replaces [USERNAME] in Update-URL (URL-encoded)" -msgstr "" +msgstr "Sostituisci [NOME UTENTE] nell'URL di aggiornamento (URL codificato)" msgid "Run once" -msgstr "" +msgstr "Esegui una volta" msgid "Script" msgstr "" msgid "Show more" -msgstr "" +msgstr "Mostra di più" msgid "Software update required" -msgstr "" +msgstr "Richiesto aggiornamento Software" msgid "Specifying a DNS-Server is not supported" -msgstr "" +msgstr "Specificare un server DNS non è supportato" msgid "Start" -msgstr "" +msgstr "Inizio" msgid "Start / Stop" -msgstr "" +msgstr "Inizio / Stop" msgid "Status directory" msgstr "" msgid "Stopped" -msgstr "" +msgstr "Fermato" msgid "" "The currently installed 'ddns-scripts' package did not support all available " "settings." msgstr "" +"Il pacchetto 'ddns-scripts' attualmente installato non supporta tutte le opzioni " +"disponibili." msgid "The default setting of '0' will retry infinite." -msgstr "" +msgstr "L'opzione di default '0' riproverà all'infinito." msgid "There is no service configured." -msgstr "" +msgstr "Non c'è un servizio configurato." msgid "Timer Settings" -msgstr "" +msgstr "Impostazioni del Timer" msgid "To change global settings click here" -msgstr "" +msgstr "Per cambiare le opzioni globali clicca qui" msgid "To use cURL activate this option." -msgstr "" +msgstr "Per usare cURL attiva questa opzione." msgid "URL" msgstr "URL" msgid "URL to detect" -msgstr "" +msgstr "URL da individuare" msgid "Unknown error" -msgstr "" +msgstr "Errore sconosciuto" msgid "" "Update URL to be used for updating your DDNS Provider.<br />Follow " "instructions you will find on their WEB page." msgstr "" +"L'URL di aggiornamento da usare per aggiornare il tuo Provider DDNS.<br />" +"Segui le istruzioni che trovi sulla loro pagina WEB." msgid "Update error" -msgstr "" +msgstr "Errore di aggiornamento" msgid "Use HTTP Secure" -msgstr "" +msgstr "Usa HTTP Sicuro" msgid "Use cURL" -msgstr "" +msgstr "Usa cURL" msgid "User defined script to read systems IP-Address" -msgstr "" +msgstr "Script definito dall'utente per leggere l'indirizzo IP dei sistemi" msgid "Username" msgstr "Nome Utente" msgid "Using specific DNS Server not supported" -msgstr "" +msgstr "Usare specifici Server DNS non supportato" msgid "Verify" -msgstr "" +msgstr "Verifica" msgid "Version" -msgstr "" +msgstr "Versione" msgid "Version Information" -msgstr "" +msgstr "Informazione Versione" msgid "Waiting for changes to be applied..." -msgstr "" +msgstr "Aspettando l'applicazione dei cambiamenti..." msgid "Warning" -msgstr "" +msgstr "Allarme" msgid "" "Writes detailed messages to log file. File will be truncated automatically." msgstr "" +"Scrivi messaggi dettagliati sul registro. Il file sarà tagliato automaticamente." msgid "" "Writes log messages to syslog. Critical Errors will always be written to " "syslog." msgstr "" +"Scrivi i messaggi registro al syslog. Gli Errori Critici saranno sempre scritti " +"sul syslog." msgid "" "You should install 'bind-host' or 'knot-host' or 'drill' or 'hostip' " "package, if you need to specify a DNS server to detect your registered IP." msgstr "" +"Dovresti installare il pacchetto 'bind-host' o 'knot-host' o 'drill' o 'hostip', " +"se hai bisogno di specificare un server DNS che identifichi il tuo IP registrato." msgid "" "You should install 'bind-host' or 'knot-host' or 'drill' package for DNS " "requests." msgstr "" +"Dovresti installare il pacchetto 'bind-host' o 'knot-host' o 'drill' per le " +"richieste DNS." msgid "You should install 'wget' or 'curl' or 'uclient-fetch' package." -msgstr "" +msgstr "Dovresti installare il pacchetto 'wget' o 'curl' o 'uclient-fetch'." msgid "" "You should install 'wget' or 'curl' or 'uclient-fetch' with 'libustream-" "*ssl' package." msgstr "" +"Dovresti installare il pacchetto 'wget' o 'curl' o 'uclient-fetch' con il " +"pacchetto 'libustream-*ssl'." msgid "You should install 'wget' or 'curl' package." -msgstr "" +msgstr "Dovresti installare il pacchetto 'wget' o 'curl'." msgid "" "You should install 'wget' or 'uclient-fetch' package or replace libcurl." msgstr "" +"Dovresti installare il pacchetto 'wget' o 'uclient-fetch' o sostituire libcurl." msgid "cURL is installed, but libcurl was compiled without proxy support." -msgstr "" +msgstr "cURL è installato, ma libcurl è compilato senza supporto proxy." msgid "cURL without Proxy Support" -msgstr "" +msgstr "cURL senza Supporto Proxy" msgid "can not detect local IP. Please select a different Source combination" -msgstr "" +msgstr "non individuo l'IP locale. Per favore seleziona una combinazione Sorgente diversa" msgid "can not resolve host:" -msgstr "" +msgstr "non posso risolvere host:" msgid "config error" -msgstr "" +msgstr "errore configurazione" msgid "days" -msgstr "" +msgstr "giorni" msgid "directory or path/file" -msgstr "" +msgstr "directory o percorso/file" msgid "either url or script could be set" -msgstr "" +msgstr "o l'url o lo script può essere impostato" msgid "enable here" -msgstr "" +msgstr "abilita qui" msgid "file or directory not found or not 'IGNORE'" -msgstr "" +msgstr "file o directory non trovati o non 'IGNORE'" msgid "help" -msgstr "" +msgstr "aiuto" msgid "hours" -msgstr "" +msgstr "ore" msgid "installed" -msgstr "" +msgstr "installato" msgid "invalid FQDN / required - Sample" -msgstr "" +msgstr "FQDN invalido / richiesto - Esempio" msgid "minimum value '0'" -msgstr "" +msgstr "valore minimo '0'" msgid "minimum value '1'" -msgstr "" +msgstr "valore minimo '1'" msgid "minimum value 5 minutes == 300 seconds" -msgstr "" +msgstr "valore minimo 5 minuti == 300 secondi" msgid "minutes" -msgstr "" +msgstr "minuti" msgid "missing / required" -msgstr "" +msgstr "mancante / richiesto" msgid "must be greater or equal 'Check Interval'" -msgstr "" +msgstr "deve essere più grande o uguale 'Controlla Intervallo'" msgid "must start with 'http://'" -msgstr "" +msgstr "deve iniziare con 'http://'" msgid "nc (netcat) can not connect" -msgstr "" +msgstr "nc (netcat) non può connettersi" msgid "never" -msgstr "" +msgstr "mai" msgid "no data" -msgstr "" +msgstr "Niente dati" msgid "not found or not executable - Sample: '/path/to/script.sh'" -msgstr "" +msgstr "non trovato o non eseguibile - Esempio: '/path/to/script.sh'" msgid "nslookup can not resolve host" -msgstr "" +msgstr "nslookup non può risolvere l'host" msgid "or" -msgstr "" +msgstr "o" msgid "or higher" -msgstr "" +msgstr "o più alto" msgid "please disable" -msgstr "" +msgstr "per favore disabilita" msgid "please remove entry" -msgstr "" +msgstr "per favore rimuovi la voce" msgid "please select 'IPv4' address version" -msgstr "" +msgstr "per favore seleziona versione indirizzo 'IPv4'" msgid "please select 'IPv4' address version in" -msgstr "" +msgstr "per favore seleziona versione indirizzo 'IPv4' in" msgid "please set to 'default'" -msgstr "" +msgstr "per favore imposta a 'default'" msgid "proxy port missing" -msgstr "" +msgstr "porta proxy mancante" msgid "required" -msgstr "" +msgstr "richiesto" msgid "seconds" -msgstr "" +msgstr "secondi" msgid "to run HTTPS without verification of server certificates (insecure)" -msgstr "" +msgstr "per eseguire HTTPS senza la verifica dei certificati del server (insicuro)" msgid "unknown error" -msgstr "" +msgstr "errore sconosciuto" msgid "unspecific error" -msgstr "" +msgstr "errore non specifico" msgid "use hostname, FQDN, IPv4- or IPv6-Address" -msgstr "" +msgstr "usa nome host, FQDN, indirizzo IPv4 o IPv6" diff --git a/applications/luci-app-ddns/po/pt-br/ddns.po b/applications/luci-app-ddns/po/pt-br/ddns.po index 4970846516..ab22837b28 100644 --- a/applications/luci-app-ddns/po/pt-br/ddns.po +++ b/applications/luci-app-ddns/po/pt-br/ddns.po @@ -2,15 +2,15 @@ msgid "" msgstr "" "Project-Id-Version: luci-app-ddns 2.4.0-1\n" "POT-Creation-Date: 2016-01-30 11:07+0100\n" -"PO-Revision-Date: 2016-07-01 22:40-0300\n" -"Last-Translator: Matheus Dal Mago <matheusdalmago10@gmail.com>\n" +"PO-Revision-Date: 2017-02-20 17:41-0300\n" +"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n" "Language-Team: \n" "Language: pt_BR\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: Poedit 1.8.8\n" +"X-Generator: Poedit 1.8.11\n" msgid "&" msgstr "&" @@ -228,7 +228,7 @@ msgid "Error Retry Interval" msgstr "Intervalo de tentativas em Erro" msgid "Event Network" -msgstr "" +msgstr "Rede de Evento" msgid "File" msgstr "Arquivo" @@ -438,16 +438,16 @@ msgid "No certificates found" msgstr "Nenhum certificado encontrado" msgid "No data" -msgstr "" +msgstr "Sem dados" msgid "No logging" -msgstr "" +msgstr "Sem registros" msgid "Non-public and by default blocked IP's" msgstr "IPs não públicos e bloqueados por padrão" msgid "Notice" -msgstr "" +msgstr "Aviso" msgid "Number of last lines stored in log files" msgstr "Número das últimas linhas salvas nos arquivos de log" @@ -475,7 +475,7 @@ msgstr "" "Em Erro, o script irá para a execução após um número definido de tentativas" msgid "OpenWrt Wiki" -msgstr "" +msgstr "Wiki do OpenWRT" msgid "Optional Encoded Parameter" msgstr "Parâmetro Opcionalmente Codificado" @@ -490,7 +490,7 @@ msgid "Optional: Replaces [PARAMOPT] in Update-URL (NOT URL-encoded)" msgstr "Opcional: Substitui [PARAMOPT] na URL de atualização" msgid "Overview" -msgstr "" +msgstr "Visão Geral" msgid "PROXY-Server" msgstr "servidor PROXY" @@ -575,7 +575,7 @@ msgid "There is no service configured." msgstr "Não há serviço configurado" msgid "Timer Settings" -msgstr "" +msgstr "Configurações do Controlador de Tempo" msgid "To change global settings click here" msgstr "Clique aqui para mudar configurações globais" diff --git a/applications/luci-app-ddns/po/ru/ddns.po b/applications/luci-app-ddns/po/ru/ddns.po index a41d1f498b..fae11275d3 100644 --- a/applications/luci-app-ddns/po/ru/ddns.po +++ b/applications/luci-app-ddns/po/ru/ddns.po @@ -1,183 +1,204 @@ msgid "" msgstr "" -"Project-Id-Version: luci-app-ddns 2.4.0-1\n" -"POT-Creation-Date: 2016-01-30 11:07+0100\n" -"PO-Revision-Date: 2012-11-01 21:54+0300\n" -"Last-Translator: Roman A. aka BasicXP <x12ozmouse@ya.ru>\n" -"Language-Team: Russian <x12ozmouse@ya.ru>\n" -"Language: ru\n" -"MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" +"Project-Id-Version: LuCI: ddns\n" +"POT-Creation-Date: 2017-10-17 21:00+0300\n" +"PO-Revision-Date: 2018-01-24 14:58+0300\n" +"Language-Team: http://cyber-place.ru\n" +"MIME-Version: 1.0\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.8.7.1\n" +"Last-Translator: Vladimir aka sunny <picfun@ya.ru>\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -"X-Generator: Poedit 1.8.4\n" -"X-Poedit-SourceCharset: UTF-8\n" +"Language: ru\n" +"Project-Info: Это технический перевод, не дословный. Главное-удобный русский " +"интерфейс, все проверялось в графическом режиме, совместим с другими apps\n" msgid "&" -msgstr "" +msgstr "и" msgid "-- custom --" -msgstr "" +msgstr "-- пользовательский --" msgid "-- default --" -msgstr "" +msgstr "-- по умолчанию --" msgid "Advanced Settings" -msgstr "" +msgstr "Дополнительные настройки" msgid "Allow non-public IP's" -msgstr "" +msgstr "Разрешить<br />не публичные IP-адреса" msgid "Applying changes" -msgstr "" +msgstr "Применение изменений" msgid "Basic Settings" -msgstr "" +msgstr "Основные настройки" msgid "" "Below a list of configuration tips for your system to run Dynamic DNS " "updates without limitations" msgstr "" +"Советы по настройке для запуска динамических обновлений DNS без ограничений." msgid "" "Below is a list of configured DDNS configurations and their current state." -msgstr "" +msgstr "Список настроек DDNS и их текущее состояние." msgid "Bind Network" -msgstr "" +msgstr "Привязать сеть" msgid "Binding to a specific network not supported" -msgstr "" +msgstr "Привязка к определенной сети, не поддерживается." msgid "" "BusyBox's nslookup and Wget do not support to specify the IP version to use " "for communication with DDNS Provider!" msgstr "" +"nslookup и Wget - BusyBox-а, не поддерживают указание IP-версии, " +"используемой для связи с DDNS провайдером!" msgid "" "BusyBox's nslookup and hostip do not support to specify to use TCP instead " "of default UDP when requesting DNS server!" msgstr "" +"nslookup и hostip - BusyBox-а, не поддерживают указание использовать TCP " +"вместо UDP по умолчанию при запросе DNS сервера!" msgid "" "BusyBox's nslookup in the current compiled version does not handle given DNS " "Servers correctly!" msgstr "" +"Благодаря текущей скомпилированной версии nslookup, BusyBox не обрабатывает " +"данные DNS сервера правильно!" msgid "Casual users should not change this setting" -msgstr "" +msgstr "Случайные пользователи, не должны изменять эти настройки" msgid "Change provider" -msgstr "" +msgstr "Сменить провайдера" msgid "Check Interval" -msgstr "" +msgstr "Интервал проверки" msgid "Collecting data..." -msgstr "" +msgstr "Сбор данных..." msgid "Config error" -msgstr "" +msgstr "Ошибка config файла" msgid "Configuration" -msgstr "" +msgstr "Настройка config файла" msgid "" "Configure here the details for all Dynamic DNS services including this LuCI " "application." -msgstr "" +msgstr "Настройка для всех служб DDNS, включая это приложение LuCI." msgid "Configure here the details for selected Dynamic DNS service." -msgstr "" +msgstr "Тонкая настройка выбранной службы DDNS." msgid "Current setting" -msgstr "" +msgstr "Текущие настройки" msgid "" "Currently DDNS updates are not started at boot or on interface events.<br /" ">This is the default if you run DDNS scripts by yourself (i.e. via cron with " "force_interval set to '0')" msgstr "" +"В настоящее время, обновления DDNS не запускаются при загрузке или при " +"событиях интерфейса.<br />по умолчанию, если вы запускаете DDNS скрипты сами " +"(т.е. через cron с force_interval set to '0')" msgid "" "Currently DDNS updates are not started at boot or on interface events.<br /" ">You can start/stop each configuration here. It will run until next reboot." msgstr "" +"В настоящее время, обновления DDNS не запускаются при загрузке или при " +"событиях интерфейса.<br />.<br />Вы можете запустить/остановить каждый " +"config здесь. Он будет работать до следующей перезагрузки." msgid "Custom update script to be used for updating your DDNS Provider." msgstr "" +"Пользовательский скрипт обновления, который будет использоваться для вашего " +"провайдера DDNS." msgid "Custom update-URL" -msgstr "Пользовательский URL обновления" +msgstr "Пользовательский<br />URL обновления" msgid "Custom update-script" -msgstr "" +msgstr "Пользовательский<br />скрипт обновления" msgid "DDNS Autostart disabled" -msgstr "" +msgstr "Автостарт DDNS отключен" msgid "DDNS Client Configuration" -msgstr "" +msgstr "Настройка клиента DDNS." msgid "DDNS Client Documentation" -msgstr "" +msgstr "Информация для клиента DDNS" msgid "DDNS Service provider" -msgstr "" +msgstr "Провайдер службы<br />DDNS" msgid "DNS requests via TCP not supported" -msgstr "" +msgstr "DNS запросы по протоколу TCP не поддерживаются" msgid "DNS-Server" -msgstr "" +msgstr "DNS сервер" msgid "Date format" -msgstr "" +msgstr "Формат даты" msgid "Defines the Web page to read systems IPv4-Address from" -msgstr "" +msgstr "Задайте веб-страницу для связи с системным IPv4-адресом из" msgid "Defines the Web page to read systems IPv6-Address from" -msgstr "" +msgstr "Задайте веб-страницу для связи с системным IPv6-адресом из" msgid "Defines the interface to read systems IP-Address from" -msgstr "" +msgstr "Задайте интерфейс для чтения системного IP-адреса из" msgid "Defines the network to read systems IPv4-Address from" -msgstr "" +msgstr "Задайте сеть для связи с системным IPv4-адресом из." msgid "Defines the network to read systems IPv6-Address from" -msgstr "" +msgstr "Задайте сеть для связи с системным IPv6-адреса из." msgid "" "Defines the source to read systems IPv4-Address from, that will be send to " "the DDNS provider" msgstr "" +"Задайте источник для связи с системным IPv4-адресом, который будет отправлен " +"DDNS провайдеру." msgid "" "Defines the source to read systems IPv6-Address from, that will be send to " "the DDNS provider" msgstr "" +"Задайте источник для связи с системным IPv6-адресом, который будет отправлен " +"DDNS провайдеру." msgid "Defines which IP address 'IPv4/IPv6' is send to the DDNS provider" msgstr "" +"Задайте версию протокола IP-адреса 'IPv4/IPv6' отправляется провайдеру DDNS." msgid "Details for" -msgstr "" +msgstr "Подробности для" msgid "Directory contains Log files for each running section" -msgstr "" +msgstr "Папка содержит файлы системного журнала для каждого запуска." msgid "" "Directory contains PID and other status information for each running section" -msgstr "" +msgstr "Папка содержит PID и прочую информацию о состояниии каждого запуска." msgid "Disabled" -msgstr "" +msgstr "Отключено" msgid "Domain" -msgstr "" +msgstr "Домен" msgid "Dynamic DNS" msgstr "Динамический DNS" @@ -186,136 +207,158 @@ msgid "" "Dynamic DNS allows that your router can be reached with a fixed hostname " "while having a dynamically changing IP address." msgstr "" -"Динамический DNS позволяет вашему маршрутизатору иметь постоянное доменное " -"имя при динамическом IP-адресе." +"DDNS разрешает вашему маршрутизатору иметь постоянное доменное имя, при " +"динамически изменяемом IP-адресе." msgid "Enable secure communication with DDNS provider" -msgstr "" +msgstr "Включить безопасное соединение с провайдером DDNS." msgid "Enabled" -msgstr "" +msgstr "Включено" msgid "Error" -msgstr "" +msgstr "Ошибка" msgid "Error Retry Counter" -msgstr "" +msgstr "Учет попыток повтора<br />при ошибке" msgid "Error Retry Interval" -msgstr "" +msgstr "Интервал попытки<br />повтора при ошибке" msgid "Event Network" -msgstr "" +msgstr "Событие сети" msgid "File" -msgstr "" +msgstr "Файл" msgid "File not found" -msgstr "" +msgstr "Файл не найден" msgid "File not found or empty" -msgstr "" +msgstr "Файл не найден или пустой" msgid "" "Follow this link<br />You will find more hints to optimize your system to " "run DDNS scripts with all options" msgstr "" +"Пройдите по этой ссылке<br />там вы найдете больше информации, как настроить " +"вашу систему с использованием DDNS скриптов с наиболее полным функционалом." msgid "For detailed information about parameter settings look here." msgstr "" +"Здесь вы сможете получить, более подробную информацию о параметрах настройки." msgid "For supported codes look here" -msgstr "" +msgstr "С поддерживаемыми кодами, вы сможете ознакомится здесь." msgid "Force IP Version" -msgstr "" +msgstr "Назначенная версия<br />IP-адреса" msgid "Force IP Version not supported" -msgstr "" +msgstr "Назначенная версия протокола IP-адреса, не поддерживается" msgid "Force Interval" -msgstr "" +msgstr "Назначить интервал" msgid "Force TCP on DNS" -msgstr "" +msgstr "Выбрать протокол TCP для DNS" msgid "Forced IP Version don't matched" -msgstr "" +msgstr "Назначенная версия протокола IP-адреса не проверялась" msgid "Format" -msgstr "" +msgstr "Формат" msgid "Format: IP or FQDN" -msgstr "" +msgstr "В виде: IP-адрес или полное доменное имя." msgid "" "GNU Wget will use the IP of given network, cURL will use the physical " "interface." msgstr "" +"GNU wget будет использовать IP присвоенный сетью, cURL будет использовать " +"физический интерфейс." msgid "Global Settings" -msgstr "" +msgstr "Основные настройки" msgid "HTTPS not supported" -msgstr "" +msgstr "HTTPS не поддерживается" msgid "Hints" -msgstr "" +msgstr "Подсказки" msgid "Hostname/FQDN to validate, if IP update happen or necessary" msgstr "" +"Имя хоста/полное доменное имя для проверки, если происходит обновление IP-" +"адреса или оно необходимо." msgid "IP address source" -msgstr "" +msgstr "IP адрес источника" msgid "IP address version" -msgstr "" +msgstr "Версия IP-адреса" msgid "IPv4-Address" -msgstr "" +msgstr "IPv4-адрес" msgid "IPv6 address must be given in square brackets" -msgstr "" +msgstr "IPv6 адрес должен быть указан в квадратных скобках" msgid "" "IPv6 is currently not (fully) supported by this system<br />Please follow " "the instructions on OpenWrt's homepage to enable IPv6 support<br />or update " "your system to the latest OpenWrt Release" msgstr "" +"IPv6 не поддерживается вашей прошивкой < br />, следуйте инструкциям на " +"главной странице OpenWrt, чтобы включить поддержку IPv6<br / >или обновить " +"прошивку до последнего выпуска OpenWrt с включением поддержки IPv6." msgid "IPv6 not supported" -msgstr "" +msgstr "IPv6 не поддерживается" msgid "IPv6-Address" -msgstr "" +msgstr "IPv6-адрес" msgid "If both cURL and GNU Wget are installed, Wget is used by default." msgstr "" +"Если установлены cURL и GNU Wget вместе, Wget будет использоваться по " +"умолчанию." msgid "" "If this service section is disabled it could not be started.<br />Neither " "from LuCI interface nor from console" msgstr "" +"Если этот режим службы отключен, его нельзя будет запустить. Не с веб-" +"интерфейса LuCI, ни с консоли." msgid "If using secure communication you should verify server certificates!" msgstr "" +"Если используется безопасное соединение, необходимо проверить сертификаты " +"сервера!" msgid "" "If you want to send updates for IPv4 and IPv6 you need to define two " "separate Configurations i.e. 'myddns_ipv4' and 'myddns_ipv6'" msgstr "" +"Версии протоколов IPv4 и IPv6 необходимо настроить раздельно , т. е. " +"'myddns_ipv4' и 'myddns_ipv6'." msgid "" "In some versions cURL/libcurl in OpenWrt is compiled without proxy support." msgstr "" +"В некоторых случаях cURL/libcurl, если OpenWrt скомпилирован без поддержки " +"прокси." msgid "Info" -msgstr "" +msgstr "Информация" msgid "" "Install 'ca-certificates' package or needed certificates by hand into /etc/" "ssl/certs default directory" msgstr "" +"Установите 'ca-certificates' или пакет необходимых сертификатов вручную в " +"папку/etc/ssl/certs" msgid "Interface" msgstr "Интерфейс" @@ -324,408 +367,439 @@ msgid "" "Interval to check for changed IP<br />Values below 5 minutes == 300 seconds " "are not supported" msgstr "" +"Интервал для проверки измененных IP-адресов.<br />ниже 5 минут = = 300 " +"секунд не поддерживаются." msgid "" "Interval to force updates send to DDNS Provider<br />Setting this parameter " "to 0 will force the script to only run once<br />Values lower 'Check " "Interval' except '0' are not supported" msgstr "" +"Интервал для назначения отправки обновлений провайдеру DDNS.<br />Установка " +"значения '0', заставит сценарий отработать только один раз, значения ниже " +"'Интервал проверки' за исключением '0' не поддерживаются." msgid "It is NOT recommended for casual users to change settings on this page." msgstr "" +"Не рекомендуется случайным пользователям, изменять настройки на этой " +"странице." msgid "Last Update" -msgstr "" +msgstr "Последнее обновление" msgid "Loading" -msgstr "" +msgstr "Загрузка" msgid "Log File Viewer" -msgstr "" +msgstr "Просмотр системного журнала" msgid "Log directory" -msgstr "" +msgstr "Папка системного<br />журнала" msgid "Log length" -msgstr "" +msgstr "Просмотр журнала" msgid "Log to file" -msgstr "" +msgstr "Запись в файл" msgid "Log to syslog" -msgstr "" +msgstr "Запись в журнал" msgid "Lookup Hostname" -msgstr "" +msgstr "Поиск имени хоста" msgid "NOT installed" -msgstr "" +msgstr "Не установлена" msgid "" "Neither GNU Wget with SSL nor cURL installed to select a network to use for " "communication." -msgstr "" +msgstr "Neither GNU Wget с SSL nor cURL установлены для выбора сети для связи." msgid "" "Neither GNU Wget with SSL nor cURL installed to support secure updates via " "HTTPS protocol." msgstr "" +"Neither GNU Wget с SSL nor cURL установлены для поддержки безопасных " +"обновлений по протоколу HTTPS." msgid "Network" msgstr "Сеть" msgid "Network on which the ddns-updater scripts will be started" -msgstr "" +msgstr "Сеть, в которой будут запущены скрипты DDNS-updater" msgid "Never" -msgstr "" +msgstr "Никогда" msgid "Next Update" -msgstr "" +msgstr "Следующее обновление" msgid "No certificates found" -msgstr "" +msgstr "Сертификаты не найдены" msgid "No data" -msgstr "" +msgstr "Нет данных" msgid "No logging" -msgstr "" +msgstr "Нет записи в системный журнал" msgid "Non-public and by default blocked IP's" -msgstr "" +msgstr "Непубличные и по умолчанию заблокированные IP-адреса" msgid "Notice" -msgstr "" +msgstr "Заметка" msgid "Number of last lines stored in log files" -msgstr "" +msgstr "Число последних строк, системного журнала." msgid "OPTIONAL: Force the usage of pure IPv4/IPv6 only communication." -msgstr "" +msgstr "Необязательно: Назначить использование версии протоколов IPv4/IPv6." msgid "OPTIONAL: Force the use of TCP instead of default UDP on DNS requests." msgstr "" +"Необязательно: Назначить использование протокола TCP вместо UDP по умолчанию " +"для DNS-запросов." msgid "OPTIONAL: Network to use for communication" -msgstr "" +msgstr "Необязательно: Сеть для связи" msgid "OPTIONAL: Proxy-Server for detection and updates." -msgstr "" +msgstr "Необязательно: Прокси-сервер для обнаружения и обновления." msgid "OPTIONAL: Use non-default DNS-Server to detect 'Registered IP'." msgstr "" +"Необязательно: Использовать по умолчанию DNS сервер, чтобы обнаружить " +"'Зарегистрированный IP-адрес'." msgid "On Error the script will retry the failed action after given time" msgstr "" +"В случае ошибки, скрипт повторит неудавшееся действие по истечении заданного " +"времени." msgid "On Error the script will stop execution after given number of retrys" msgstr "" +"В случае ошибки, скрипт прекратит выполнение, после заданного количества " +"повторных попыток." msgid "OpenWrt Wiki" -msgstr "" +msgstr "OpenWrt Wiki" msgid "Optional Encoded Parameter" -msgstr "" +msgstr "Необязательный кодированный параметр" msgid "Optional Parameter" -msgstr "" +msgstr "Необязательный<br />параметр" msgid "Optional: Replaces [PARAMENC] in Update-URL (URL-encoded)" -msgstr "" +msgstr "Необязательно: заменяет [PARAMENC] в Update-URL-адрес (URL-encoded)." msgid "Optional: Replaces [PARAMOPT] in Update-URL (NOT URL-encoded)" msgstr "" +"Необязательно: заменяет [PARAMOPT] в Update-URL-адрес (не URL-encoded)." msgid "Overview" -msgstr "" +msgstr "Главное меню" msgid "PROXY-Server" -msgstr "" +msgstr "Прокси сервер" msgid "PROXY-Server not supported" -msgstr "" +msgstr "Прокси сервер не поддерживается" msgid "Password" msgstr "Пароль" msgid "Path to CA-Certificate" -msgstr "" +msgstr "Путь к CA-Сертификату" msgid "Please [Save & Apply] your changes first" -msgstr "" +msgstr "Нажмите [Сохранить и применить] чтобы сохранить ваши настройки." msgid "Please press [Read] button" -msgstr "" +msgstr "Нажмите кнопку [Читать / Перечитывать системный журнал]" msgid "Please update to the current version!" -msgstr "" +msgstr "Обновите до текущей версии!" msgid "Process ID" -msgstr "" +msgstr "ID процесса" msgid "Read / Reread log file" -msgstr "" +msgstr "Читать / Перечитывать системный журнал" msgid "Really change DDNS provider?" -msgstr "" +msgstr "Действительно сменить DDNS провайдера?" msgid "Registered IP" -msgstr "" +msgstr "Зарегистрированный<br />IP-адрес" msgid "Replaces [DOMAIN] in Update-URL" -msgstr "" +msgstr "Заменяет [ДОМЕН] в Update-URL." msgid "Replaces [PASSWORD] in Update-URL (URL-encoded)" -msgstr "" +msgstr "Заменяет [ПАРОЛЬ] в Update-URL (URL-encoded)." msgid "Replaces [USERNAME] in Update-URL (URL-encoded)" -msgstr "" +msgstr "Заменяет [ЛОГИН] in Update-URL (URL-encoded)." msgid "Run once" -msgstr "" +msgstr "Запуск один раз" msgid "Script" -msgstr "" +msgstr "Скрипт" msgid "Show more" -msgstr "" +msgstr "Показать больше" msgid "Software update required" -msgstr "" +msgstr "Требуется обновление программного обеспечения." msgid "Specifying a DNS-Server is not supported" -msgstr "" +msgstr "Указанный DNS сервер не поддерживается" msgid "Start" -msgstr "" +msgstr "Старт" msgid "Start / Stop" -msgstr "" +msgstr "Старт / Стоп" msgid "Status directory" -msgstr "" +msgstr "Папка состояния" msgid "Stopped" -msgstr "" +msgstr "Остановлено" msgid "" "The currently installed 'ddns-scripts' package did not support all available " "settings." msgstr "" +"Пакет установленных 'ddns-scripts' не поддерживает все доступные настройки." msgid "The default setting of '0' will retry infinite." -msgstr "" +msgstr "Значение по умолчанию '0' будет повторяться бесконечно." msgid "There is no service configured." -msgstr "" +msgstr "Сервис не настроен." msgid "Timer Settings" -msgstr "" +msgstr "Настройка таймера" msgid "To change global settings click here" -msgstr "" +msgstr "Чтобы изменить основные настройки, нажмите здесь." msgid "To use cURL activate this option." -msgstr "" +msgstr "Для использования cURL активируйте режим." msgid "URL" msgstr "URL" msgid "URL to detect" -msgstr "" +msgstr "обнаружен URL" msgid "Unknown error" -msgstr "" +msgstr "Неизвестная ошибка" msgid "" "Update URL to be used for updating your DDNS Provider.<br />Follow " "instructions you will find on their WEB page." msgstr "" +"Update URL используется для обновления DDNS-провайдера.<br />Следуйте " +"инструкциям, вы найдете их на веб-странице." msgid "Update error" -msgstr "" +msgstr "Ошибка обновления" msgid "Use HTTP Secure" -msgstr "" +msgstr "Использовать HTTPS" msgid "Use cURL" -msgstr "" +msgstr "Использовать cURL" msgid "User defined script to read systems IP-Address" -msgstr "" +msgstr "Заданный пользователем скрипт для чтения системного IP-адреса." msgid "Username" msgstr "Имя пользователя" msgid "Using specific DNS Server not supported" -msgstr "" +msgstr "Использование определенного DNS сервера не поддерживается." msgid "Verify" -msgstr "" +msgstr "Проверить" msgid "Version" -msgstr "" +msgstr "Версия" msgid "Version Information" -msgstr "" +msgstr "Информация о версии" msgid "Waiting for changes to be applied..." -msgstr "" +msgstr "Ожидание применения изменений..." msgid "Warning" -msgstr "" +msgstr "Внимание" msgid "" "Writes detailed messages to log file. File will be truncated automatically." msgstr "" +"Записывать подробные сообщения в системный журнал. Файл будет автоматически " +"обрезан." msgid "" "Writes log messages to syslog. Critical Errors will always be written to " "syslog." msgstr "" +"Задайте уровень журналирования. Критические ошибки, всегда будут записаны в " +"системный журнал." msgid "" "You should install 'bind-host' or 'knot-host' or 'drill' or 'hostip' " "package, if you need to specify a DNS server to detect your registered IP." msgstr "" +"Установите 'bind-host' или 'knot-host' или 'drill' или 'hostip' пакеты если " +"вам нужно указать DNS сервер для обнаружения вашего зарегистрированного IP-" +"адреса." msgid "" "You should install 'bind-host' or 'knot-host' or 'drill' package for DNS " "requests." -msgstr "" +msgstr "Установите 'bind-host' или 'knot-host' или 'drill' для DNS запросов." msgid "You should install 'wget' or 'curl' or 'uclient-fetch' package." -msgstr "" +msgstr "Установите 'wget' или 'curl' или 'uclient-fetch' пакет." msgid "" "You should install 'wget' or 'curl' or 'uclient-fetch' with 'libustream-" "*ssl' package." msgstr "" +"Установите 'wget' или 'curl' или 'uclient-fetch' с 'libustream-*ssl' пакетом." msgid "You should install 'wget' or 'curl' package." -msgstr "" +msgstr "Установите 'wget' или 'curl' пакеты." msgid "" "You should install 'wget' or 'uclient-fetch' package or replace libcurl." msgstr "" +"Вы должны установить 'wget' или пакет 'uclient-fetch' или заменить libcurl." msgid "cURL is installed, but libcurl was compiled without proxy support." -msgstr "" +msgstr "cURL установлен, но libcurl был скомпилирован без поддержки прокси." msgid "cURL without Proxy Support" -msgstr "" +msgstr "cURL без поддержки прокси" msgid "can not detect local IP. Please select a different Source combination" -msgstr "" +msgstr "не может определить локальный IP-адрес. Выберите другой вариант" msgid "can not resolve host:" -msgstr "" +msgstr "не может разрешить хост:" msgid "config error" -msgstr "" +msgstr "ошибка в config файле" msgid "days" -msgstr "" +msgstr "дни" msgid "directory or path/file" -msgstr "" +msgstr "папка или путь/к файлу" msgid "either url or script could be set" -msgstr "" +msgstr "или url или скрипт смог быть установлен" msgid "enable here" -msgstr "" +msgstr "Включить здесь" msgid "file or directory not found or not 'IGNORE'" -msgstr "" +msgstr "файл или папка не найдена или не 'Игнорировать'" msgid "help" -msgstr "" +msgstr "помощь" msgid "hours" -msgstr "" +msgstr "часа(ов)" msgid "installed" -msgstr "" +msgstr "установлено" msgid "invalid FQDN / required - Sample" -msgstr "" +msgstr "недопустимое полное доменное имя / обязательный образец" msgid "minimum value '0'" -msgstr "" +msgstr "минимальное значение '0'" msgid "minimum value '1'" -msgstr "" +msgstr "минимальное значение '1'" msgid "minimum value 5 minutes == 300 seconds" -msgstr "" +msgstr "минимальное значение 5 минут == 300 секунд" msgid "minutes" -msgstr "" +msgstr "минут(ы)" msgid "missing / required" -msgstr "" +msgstr "отсутствует / не требуется" msgid "must be greater or equal 'Check Interval'" -msgstr "" +msgstr "должно быть больше или равно 'Интервал проверки'" msgid "must start with 'http://'" -msgstr "" +msgstr "должны начинаться с 'http://'" msgid "nc (netcat) can not connect" -msgstr "" +msgstr "NC (netcat) не может подключиться" msgid "never" -msgstr "" +msgstr "никогда" msgid "no data" -msgstr "" +msgstr "нет данных" msgid "not found or not executable - Sample: '/path/to/script.sh'" msgstr "" +"не найден или не является исполнительным, например: '/path/to/script.sh'" msgid "nslookup can not resolve host" -msgstr "" +msgstr "nslookup не может разрешить хост" msgid "or" -msgstr "" +msgstr "или" msgid "or higher" -msgstr "" +msgstr "или выше" msgid "please disable" -msgstr "" +msgstr "отключите" msgid "please remove entry" -msgstr "" +msgstr "удалите эту запись" msgid "please select 'IPv4' address version" -msgstr "" +msgstr "выберите версию протокола 'IPv4' адреса" msgid "please select 'IPv4' address version in" -msgstr "" +msgstr "выберите версию протокола 'IPv4' адреса в" msgid "please set to 'default'" -msgstr "" +msgstr "установите режим 'по умолчанию'" msgid "proxy port missing" -msgstr "" +msgstr "отсутствует прокси порт" msgid "required" -msgstr "" +msgstr "требовать" msgid "seconds" -msgstr "" +msgstr "секунд(ы)" msgid "to run HTTPS without verification of server certificates (insecure)" -msgstr "" +msgstr "использовать HTTPS без проверки сертификатов сервера (небезопасно)" msgid "unknown error" -msgstr "" +msgstr "неизвестная ошибка" msgid "unspecific error" -msgstr "" +msgstr "нетипичная ошибка" msgid "use hostname, FQDN, IPv4- or IPv6-Address" -msgstr "" +msgstr "использовать имя хоста, полное доменное имя, IPv4 или IPv6-адрес" diff --git a/applications/luci-app-ddns/po/sv/ddns.po b/applications/luci-app-ddns/po/sv/ddns.po new file mode 100644 index 0000000000..2e63ee1bde --- /dev/null +++ b/applications/luci-app-ddns/po/sv/ddns.po @@ -0,0 +1,724 @@ +msgid "" +msgstr "Content-Type: text/plain; charset=UTF-8\n" + +msgid "&" +msgstr "&" + +msgid "-- custom --" +msgstr "-- anpassad --" + +msgid "-- default --" +msgstr "-- standard --" + +msgid "Advanced Settings" +msgstr "Avancerade inställningar" + +msgid "Allow non-public IP's" +msgstr "Tillåt icke-publika IP-adresser" + +msgid "Applying changes" +msgstr "Verkställer ändringar" + +msgid "Basic Settings" +msgstr "Standardinställningar" + +msgid "" +"Below a list of configuration tips for your system to run Dynamic DNS " +"updates without limitations" +msgstr "" + +msgid "" +"Below is a list of configured DDNS configurations and their current state." +msgstr "" +"Här nedanför finns det en lista över konfigurerade DDNS-konfigurationer och deras nuvarande skick." + +msgid "Bind Network" +msgstr "Bind samman nätverk" + +msgid "Binding to a specific network not supported" +msgstr "Att binda samman med ett specifikt nätverk stöds inte" + +msgid "" +"BusyBox's nslookup and Wget do not support to specify the IP version to use " +"for communication with DDNS Provider!" +msgstr "" + +msgid "" +"BusyBox's nslookup and hostip do not support to specify to use TCP instead " +"of default UDP when requesting DNS server!" +msgstr "" + +msgid "" +"BusyBox's nslookup in the current compiled version does not handle given DNS " +"Servers correctly!" +msgstr "" + +msgid "Casual users should not change this setting" +msgstr "" + +msgid "Change provider" +msgstr "Byt operatör" + +msgid "Check Interval" +msgstr "Kontroll-intervall" + +msgid "Collecting data..." +msgstr "Samlar in data..." + +msgid "Config error" +msgstr "Konfigurationsfel" + +msgid "Configuration" +msgstr "Konfiguration" + +msgid "" +"Configure here the details for all Dynamic DNS services including this LuCI " +"application." +msgstr "" + +msgid "Configure here the details for selected Dynamic DNS service." +msgstr "" + +msgid "Current setting" +msgstr "Nuvarande inställning" + +msgid "" +"Currently DDNS updates are not started at boot or on interface events.<br /" +">This is the default if you run DDNS scripts by yourself (i.e. via cron with " +"force_interval set to '0')" +msgstr "" + +msgid "" +"Currently DDNS updates are not started at boot or on interface events.<br /" +">You can start/stop each configuration here. It will run until next reboot." +msgstr "" + +msgid "Custom update script to be used for updating your DDNS Provider." +msgstr "" + +msgid "Custom update-URL" +msgstr "Anpassad webbadress för uppdatering" + +msgid "Custom update-script" +msgstr "Anpassat uppdateringsskript" + +msgid "DDNS Autostart disabled" +msgstr "" + +msgid "DDNS Client Configuration" +msgstr "" + +msgid "DDNS Client Documentation" +msgstr "" + +msgid "DDNS Service provider" +msgstr "" + +msgid "DNS requests via TCP not supported" +msgstr "" + +msgid "DNS-Server" +msgstr "DNS-server" + +msgid "Date format" +msgstr "Datumformat" + +msgid "Defines the Web page to read systems IPv4-Address from" +msgstr "" + +msgid "Defines the Web page to read systems IPv6-Address from" +msgstr "" + +msgid "Defines the interface to read systems IP-Address from" +msgstr "" + +msgid "Defines the network to read systems IPv4-Address from" +msgstr "" + +msgid "Defines the network to read systems IPv6-Address from" +msgstr "" + +msgid "" +"Defines the source to read systems IPv4-Address from, that will be send to " +"the DDNS provider" +msgstr "" + +msgid "" +"Defines the source to read systems IPv6-Address from, that will be send to " +"the DDNS provider" +msgstr "" + +msgid "Defines which IP address 'IPv4/IPv6' is send to the DDNS provider" +msgstr "" + +msgid "Details for" +msgstr "Detaljer för" + +msgid "Directory contains Log files for each running section" +msgstr "" + +msgid "" +"Directory contains PID and other status information for each running section" +msgstr "" + +msgid "Disabled" +msgstr "Inaktivera" + +msgid "Domain" +msgstr "Domän" + +msgid "Dynamic DNS" +msgstr "Dynamisk DNS" + +msgid "" +"Dynamic DNS allows that your router can be reached with a fixed hostname " +"while having a dynamically changing IP address." +msgstr "" + +msgid "Enable secure communication with DDNS provider" +msgstr "" + +msgid "Enabled" +msgstr "Aktiverad" + +msgid "Error" +msgstr "Fel" + +msgid "Error Retry Counter" +msgstr "" + +msgid "Error Retry Interval" +msgstr "" + +msgid "Event Network" +msgstr "" + +msgid "File" +msgstr "Fil" + +msgid "File not found" +msgstr "Filen hittades inte" + +msgid "File not found or empty" +msgstr "Filen hittades inte eller tom" + +msgid "" +"Follow this link<br />You will find more hints to optimize your system to " +"run DDNS scripts with all options" +msgstr "" + +msgid "For detailed information about parameter settings look here." +msgstr "" + +msgid "For supported codes look here" +msgstr "" + +msgid "Force IP Version" +msgstr "Tvinga IP-version" + +msgid "Force IP Version not supported" +msgstr "Påtvingad IP-version stöds inte" + +msgid "Force Interval" +msgstr "" + +msgid "Force TCP on DNS" +msgstr "" + +msgid "Forced IP Version don't matched" +msgstr "" + +msgid "Format" +msgstr "Format" + +msgid "Format: IP or FQDN" +msgstr "Format: IP eller FQDN" + +msgid "" +"GNU Wget will use the IP of given network, cURL will use the physical " +"interface." +msgstr "" +"GNU Wget kommer att använda IP-adressen för det angivna nätverket, cURL " +"kommer att använda det fysiska gränssnittet." + +msgid "Global Settings" +msgstr "Globala inställningar" + +msgid "HTTPS not supported" +msgstr "HTTPS stöds inte" + +msgid "Hints" +msgstr "Ledtrådar" + +msgid "Hostname/FQDN to validate, if IP update happen or necessary" +msgstr "" + +msgid "IP address source" +msgstr "IP-adressens källa" + +msgid "IP address version" +msgstr "Version för IP-adress" + +msgid "IPv4-Address" +msgstr "IPv4-adress" + +msgid "IPv6 address must be given in square brackets" +msgstr "" + +msgid "" +"IPv6 is currently not (fully) supported by this system<br />Please follow " +"the instructions on OpenWrt's homepage to enable IPv6 support<br />or update " +"your system to the latest OpenWrt Release" +msgstr "" + +msgid "IPv6 not supported" +msgstr "IPv6 stöds inte" + +msgid "IPv6-Address" +msgstr "IPv6-adress" + +msgid "If both cURL and GNU Wget are installed, Wget is used by default." +msgstr "" +"Om både cURL och GNU Wget är installerade så används Wget som standard." + +msgid "" +"If this service section is disabled it could not be started.<br />Neither " +"from LuCI interface nor from console" +msgstr "" + +msgid "If using secure communication you should verify server certificates!" +msgstr "" + +msgid "" +"If you want to send updates for IPv4 and IPv6 you need to define two " +"separate Configurations i.e. 'myddns_ipv4' and 'myddns_ipv6'" +msgstr "" + +msgid "" +"In some versions cURL/libcurl in OpenWrt is compiled without proxy support." +msgstr "" + +msgid "Info" +msgstr "Info" + +msgid "" +"Install 'ca-certificates' package or needed certificates by hand into /etc/" +"ssl/certs default directory" +msgstr "" + +msgid "Interface" +msgstr "Gränssnitt" + +msgid "" +"Interval to check for changed IP<br />Values below 5 minutes == 300 seconds " +"are not supported" +msgstr "" + +msgid "" +"Interval to force updates send to DDNS Provider<br />Setting this parameter " +"to 0 will force the script to only run once<br />Values lower 'Check " +"Interval' except '0' are not supported" +msgstr "" + +msgid "It is NOT recommended for casual users to change settings on this page." +msgstr "" +"Det är INTE rekommenderat för vanliga användare att ändra inställningar på " +"den här sidan." + +msgid "Last Update" +msgstr "Senaste uppdateringen" + +msgid "Loading" +msgstr "Laddar" + +msgid "Log File Viewer" +msgstr "Visare för loggfil" + +msgid "Log directory" +msgstr "" + +msgid "Log length" +msgstr "Loggens längd" + +msgid "Log to file" +msgstr "Logga till fil" + +msgid "Log to syslog" +msgstr "Logga till syslog" + +msgid "Lookup Hostname" +msgstr "Kolla upp värdnamn" + +msgid "NOT installed" +msgstr "INTE installerad" + +msgid "" +"Neither GNU Wget with SSL nor cURL installed to select a network to use for " +"communication." +msgstr "" + +msgid "" +"Neither GNU Wget with SSL nor cURL installed to support secure updates via " +"HTTPS protocol." +msgstr "" + +msgid "Network" +msgstr "Nätverk" + +msgid "Network on which the ddns-updater scripts will be started" +msgstr "" + +msgid "Never" +msgstr "Aldrig" + +msgid "Next Update" +msgstr "Nästa uppdatering" + +msgid "No certificates found" +msgstr "Inga ceritifikat hittades" + +msgid "No data" +msgstr "Ingen data" + +msgid "No logging" +msgstr "Ingen loggning" + +msgid "Non-public and by default blocked IP's" +msgstr "" + +msgid "Notice" +msgstr "" + +msgid "Number of last lines stored in log files" +msgstr "" + +msgid "OPTIONAL: Force the usage of pure IPv4/IPv6 only communication." +msgstr "" + +msgid "OPTIONAL: Force the use of TCP instead of default UDP on DNS requests." +msgstr "" + +msgid "OPTIONAL: Network to use for communication" +msgstr "" + +msgid "OPTIONAL: Proxy-Server for detection and updates." +msgstr "" + +msgid "OPTIONAL: Use non-default DNS-Server to detect 'Registered IP'." +msgstr "" + +msgid "On Error the script will retry the failed action after given time" +msgstr "" + +msgid "On Error the script will stop execution after given number of retrys" +msgstr "" + +msgid "OpenWrt Wiki" +msgstr "Wiki för OpenWrt" + +msgid "Optional Encoded Parameter" +msgstr "" + +msgid "Optional Parameter" +msgstr "Valfri parameter" + +msgid "Optional: Replaces [PARAMENC] in Update-URL (URL-encoded)" +msgstr "" + +msgid "Optional: Replaces [PARAMOPT] in Update-URL (NOT URL-encoded)" +msgstr "" + +msgid "Overview" +msgstr "" + +msgid "PROXY-Server" +msgstr "PROXY-server" + +msgid "PROXY-Server not supported" +msgstr "PROXY-servern stöds inte" + +msgid "Password" +msgstr "Lösenord" + +msgid "Path to CA-Certificate" +msgstr "" + +msgid "Please [Save & Apply] your changes first" +msgstr "Vänligen [Spara & Verkställ] dina ändringar först" + +msgid "Please press [Read] button" +msgstr "Vänligen tryck på [Läs]-knappen" + +msgid "Please update to the current version!" +msgstr "Vänligen uppdatera till den senaste versionen!" + +msgid "Process ID" +msgstr "" + +msgid "Read / Reread log file" +msgstr "Läs / Läs om loggfilen" + +msgid "Really change DDNS provider?" +msgstr "" + +msgid "Registered IP" +msgstr "Registrerad IP" + +msgid "Replaces [DOMAIN] in Update-URL" +msgstr "" + +msgid "Replaces [PASSWORD] in Update-URL (URL-encoded)" +msgstr "" + +msgid "Replaces [USERNAME] in Update-URL (URL-encoded)" +msgstr "" + +msgid "Run once" +msgstr "Kör en gång" + +msgid "Script" +msgstr "Skript" + +msgid "Show more" +msgstr "Visa mer" + +msgid "Software update required" +msgstr "" + +msgid "Specifying a DNS-Server is not supported" +msgstr "" + +msgid "Start" +msgstr "Starta" + +msgid "Start / Stop" +msgstr "Starta / Stoppa" + +msgid "Status directory" +msgstr "" + +msgid "Stopped" +msgstr "Stoppad" + +msgid "" +"The currently installed 'ddns-scripts' package did not support all available " +"settings." +msgstr "" + +msgid "The default setting of '0' will retry infinite." +msgstr "" + +msgid "There is no service configured." +msgstr "Det finns ingen tjänst inställd." + +msgid "Timer Settings" +msgstr "" + +msgid "To change global settings click here" +msgstr "Klicka här för att ändra på globala inställningar" + +msgid "To use cURL activate this option." +msgstr "" + +msgid "URL" +msgstr "Webbadress" + +msgid "URL to detect" +msgstr "Webbadress att upptäcka" + +msgid "Unknown error" +msgstr "Okänt fel" + +msgid "" +"Update URL to be used for updating your DDNS Provider.<br />Follow " +"instructions you will find on their WEB page." +msgstr "" + +msgid "Update error" +msgstr "Uppdateringsfel" + +msgid "Use HTTP Secure" +msgstr "Använd Säker HTTP" + +msgid "Use cURL" +msgstr "Använd cURL" + +msgid "User defined script to read systems IP-Address" +msgstr "" + +msgid "Username" +msgstr "Användarnamn" + +msgid "Using specific DNS Server not supported" +msgstr "" + +msgid "Verify" +msgstr "Verkställ" + +msgid "Version" +msgstr "Version" + +msgid "Version Information" +msgstr "Information om versionen" + +msgid "Waiting for changes to be applied..." +msgstr "Väntar på att ändringarna ska bli verkställda..." + +msgid "Warning" +msgstr "Varning" + +msgid "" +"Writes detailed messages to log file. File will be truncated automatically." +msgstr "" + +msgid "" +"Writes log messages to syslog. Critical Errors will always be written to " +"syslog." +msgstr "" + +msgid "" +"You should install 'bind-host' or 'knot-host' or 'drill' or 'hostip' " +"package, if you need to specify a DNS server to detect your registered IP." +msgstr "" + +msgid "" +"You should install 'bind-host' or 'knot-host' or 'drill' package for DNS " +"requests." +msgstr "" + +msgid "You should install 'wget' or 'curl' or 'uclient-fetch' package." +msgstr "" + +msgid "" +"You should install 'wget' or 'curl' or 'uclient-fetch' with 'libustream-" +"*ssl' package." +msgstr "" + +msgid "You should install 'wget' or 'curl' package." +msgstr "" + +msgid "" +"You should install 'wget' or 'uclient-fetch' package or replace libcurl." +msgstr "" + +msgid "cURL is installed, but libcurl was compiled without proxy support." +msgstr "" + +msgid "cURL without Proxy Support" +msgstr "cURL utan Proxy-stöd" + +msgid "can not detect local IP. Please select a different Source combination" +msgstr "" +"kan inte upptäcka lokal IP-adress. Vänligen välj en annorlunda Käll-" +"kombination" + +msgid "can not resolve host:" +msgstr "kan inte avgöra värd:" + +msgid "config error" +msgstr "konfigurationsfel" + +msgid "days" +msgstr "dagar" + +msgid "directory or path/file" +msgstr "" + +msgid "either url or script could be set" +msgstr "kunde varken fastställa webbadress eller skript" + +msgid "enable here" +msgstr "aktivera här" + +msgid "file or directory not found or not 'IGNORE'" +msgstr "" + +msgid "help" +msgstr "hjälp" + +msgid "hours" +msgstr "timmar" + +msgid "installed" +msgstr "installerad" + +msgid "invalid FQDN / required - Sample" +msgstr "ogiltig FQDN / behövs - Urval" + +msgid "minimum value '0'" +msgstr "minimalt värde '0'" + +msgid "minimum value '1'" +msgstr "minimalt värde '1'" + +msgid "minimum value 5 minutes == 300 seconds" +msgstr "minimalt värde 5 minuter == 300 sekunder" + +msgid "minutes" +msgstr "minutrar" + +msgid "missing / required" +msgstr "saknas / behövs" + +msgid "must be greater or equal 'Check Interval'" +msgstr "" + +msgid "must start with 'http://'" +msgstr "måste börja med 'http://" + +msgid "nc (netcat) can not connect" +msgstr "nc (netcat) kan inte ansluta" + +msgid "never" +msgstr "aldrig" + +msgid "no data" +msgstr "ingen data" + +msgid "not found or not executable - Sample: '/path/to/script.sh'" +msgstr "" + +msgid "nslookup can not resolve host" +msgstr "" + +msgid "or" +msgstr "eller" + +msgid "or higher" +msgstr "eller större" + +msgid "please disable" +msgstr "vänligen inaktivera" + +msgid "please remove entry" +msgstr "vänligen ta bort inmatningen" + +msgid "please select 'IPv4' address version" +msgstr "vänligen välj version för 'IPv4'-adress" + +msgid "please select 'IPv4' address version in" +msgstr "" + +msgid "please set to 'default'" +msgstr "" + +msgid "proxy port missing" +msgstr "" + +msgid "required" +msgstr "behövs" + +msgid "seconds" +msgstr "sekunder" + +msgid "to run HTTPS without verification of server certificates (insecure)" +msgstr "för att köra HTTPS utan verifiering av server-certifikaten (osäkert)" + +msgid "unknown error" +msgstr "okänt fel" + +msgid "unspecific error" +msgstr "ospecifierat fel" + +msgid "use hostname, FQDN, IPv4- or IPv6-Address" +msgstr "använd värdnamn, FQDN, IPv4- eller IPv6-adress" diff --git a/applications/luci-app-ddns/po/zh-cn/ddns.po b/applications/luci-app-ddns/po/zh-cn/ddns.po index 91bb756b37..f004f8282f 100644 --- a/applications/luci-app-ddns/po/zh-cn/ddns.po +++ b/applications/luci-app-ddns/po/zh-cn/ddns.po @@ -1,18 +1,22 @@ +# +# Yangfl <mmyangfl@gmail.com>, 2017. +# msgid "" msgstr "" "Project-Id-Version: luci-app-ddns 2.4.0-1\n" "POT-Creation-Date: 2016-01-30 11:07+0100\n" -"PO-Revision-Date: 2015-04-23 13:00+0800\n" -"Last-Translator: Syrone Wong <wong.syrone@gmail.com>\n" +"PO-Revision-Date: 2017-10-29 14:14+0800\n" +"Last-Translator: Yangfl <mmyangfl@gmail.com>\n" "Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Poedit 1.8.4\n" +"X-Generator: Gtranslator 2.91.7\n" +"Language-Team: <debian-l10n-chinese@lists.debian.org>\n" msgid "&" -msgstr "" +msgstr "&" msgid "-- custom --" msgstr "-- 自定义 --" @@ -24,7 +28,7 @@ msgid "Advanced Settings" msgstr "高级设置" msgid "Allow non-public IP's" -msgstr "允许非公网IP" +msgstr "允许非公网 IP" msgid "Applying changes" msgstr "正在应用更改" @@ -35,11 +39,11 @@ msgstr "基础设置" msgid "" "Below a list of configuration tips for your system to run Dynamic DNS " "updates without limitations" -msgstr "以下是一个能够让你的系统不受限制地进行动态DNS更新的设置贴士." +msgstr "以下是一个能够让您的系统不受限制地进行动态 DNS 更新设置的提示列表" msgid "" "Below is a list of configured DDNS configurations and their current state." -msgstr "一下是当前已经配置好的DDNS设置项列表以及它们的当前状态." +msgstr "以下是当前已经配置好的 DDNS 设置项列表以及它们的当前状态。" msgid "Bind Network" msgstr "使用的接口" @@ -50,23 +54,27 @@ msgstr "不支持绑定到一个指定的网络" msgid "" "BusyBox's nslookup and Wget do not support to specify the IP version to use " "for communication with DDNS Provider!" -msgstr "与DDNS供应商通讯时BusyBox的nslookup和Wget不支持设置特定的IP协议版本." +msgstr "" +"与 DDNS 供应商通讯时,BusyBox 的 nslookup 和 Wget 不支持设置特定的 IP 协议版" +"本。" msgid "" "BusyBox's nslookup and hostip do not support to specify to use TCP instead " "of default UDP when requesting DNS server!" msgstr "" +"向 DNS 服务器查询时,BusyBox 的 nslookup 和 hostip 不支持使用 TCP 而不是默认" +"的 UDP!" msgid "" "BusyBox's nslookup in the current compiled version does not handle given DNS " "Servers correctly!" -msgstr "" +msgstr "当前编译版本中 BusyBox 的 nslookup 在处理给定的 DNS 服务器不正确!" msgid "Casual users should not change this setting" msgstr "普通用户不应该改变这个设置" msgid "Change provider" -msgstr "" +msgstr "更改提供者" msgid "Check Interval" msgstr "检查时间周期" @@ -83,10 +91,10 @@ msgstr "设置" msgid "" "Configure here the details for all Dynamic DNS services including this LuCI " "application." -msgstr "在这里修改动态DNS服务的详细配置" +msgstr "在这里修改动态 DNS 服务的详细配置。" msgid "Configure here the details for selected Dynamic DNS service." -msgstr "在这里修改选择的DDNS服务的详细配置" +msgstr "在这里修改选择的 DDNS 服务的详细配置。" msgid "Current setting" msgstr "当前设置" @@ -96,76 +104,76 @@ msgid "" ">This is the default if you run DDNS scripts by yourself (i.e. via cron with " "force_interval set to '0')" msgstr "" -"现在,DDNS更新在开机或者接口动作时不会被触发<br />如果你手工运行DDNS脚本的话" -"(例如使用cron时把force_interval设置为0),这是默认设置." +"现在,DDNS 更新在开机或者接口动作时不会被触发。<br />如果您手工运行 DDNS 脚本" +"的话(例如使用 cron 时把 force_interval 设置为 0),这是默认设置。" msgid "" "Currently DDNS updates are not started at boot or on interface events.<br /" ">You can start/stop each configuration here. It will run until next reboot." msgstr "" -"现在,DDNS更新在开机或者接口动作时不会被触发<br />你可以在这里开始/停止每一个" -"设置的条目.它在下次重启之前一直有效." +"现在,DDNS 更新在开机或者接口动作时不会被触发。<br />您可以在这里开始/停止每" +"一个设置的条目。它在下次重启之前一直有效。" msgid "Custom update script to be used for updating your DDNS Provider." -msgstr "用来更新动态DNS的自定义脚本" +msgstr "用来更新动态 DNS 的自定义脚本。" msgid "Custom update-URL" -msgstr "自定义更新URL" +msgstr "自定义更新 URL" msgid "Custom update-script" msgstr "自定义更新脚本" msgid "DDNS Autostart disabled" -msgstr "DDNS自动启动已禁用." +msgstr "DDNS 自动启动已禁用。" msgid "DDNS Client Configuration" -msgstr "" +msgstr "DDNS 客户端配置" msgid "DDNS Client Documentation" -msgstr "" +msgstr "DDNS 客户端文档" msgid "DDNS Service provider" -msgstr "DDNS服务提供商" +msgstr "DDNS 服务提供商" msgid "DNS requests via TCP not supported" -msgstr "不支持使用TCP进行DNS解析" +msgstr "不支持使用 TCP 进行 DNS 解析" msgid "DNS-Server" -msgstr "DNS服务器" +msgstr "DNS-服务器" msgid "Date format" msgstr "日期格式" msgid "Defines the Web page to read systems IPv4-Address from" -msgstr "设定用来读取系统IPv4地址的网页" +msgstr "设定用来读取系统 IPv4 地址的网页" msgid "Defines the Web page to read systems IPv6-Address from" -msgstr "设定用来读取系统IPv6地址的网页" +msgstr "设定用来读取系统 IPv6 地址的网页" msgid "Defines the interface to read systems IP-Address from" -msgstr "设定用来读取系统IP地址的接口" +msgstr "设定用来读取系统 IP 地址的接口" msgid "Defines the network to read systems IPv4-Address from" -msgstr "设定用来读取系统IPv4地址的网络" +msgstr "设定用来读取系统 IPv4 地址的网络" msgid "Defines the network to read systems IPv6-Address from" -msgstr "设定用来读取系统IPv6地址的网络" +msgstr "设定用来读取系统 IPv6 地址的网络" msgid "" "Defines the source to read systems IPv4-Address from, that will be send to " "the DDNS provider" -msgstr "设定IPv4地址的来源.这将会被发送给DDNS提供商" +msgstr "设定 IPv4 地址的来源。这将会被发送给 DDNS 提供商" msgid "" "Defines the source to read systems IPv6-Address from, that will be send to " "the DDNS provider" -msgstr "设定IPv6地址的来源.这将会被发送给DDNS提供商" +msgstr "设定 IPv6 地址的来源。这将会被发送给 DDNS 提供商" msgid "Defines which IP address 'IPv4/IPv6' is send to the DDNS provider" -msgstr "设定哪一个IP地址(IPv4或IPv6)会被发送给DDNS提供商" +msgstr "设定哪一个 IP 地址(IPv4 或 IPv6)会被发送给 DDNS 提供商" msgid "Details for" -msgstr "详情:" +msgstr "详情" msgid "Directory contains Log files for each running section" msgstr "保存每一个运行中的设置的运行日志的目录" @@ -178,18 +186,18 @@ msgid "Disabled" msgstr "已禁用" msgid "Domain" -msgstr "" +msgstr "域名" msgid "Dynamic DNS" -msgstr "动态DNS" +msgstr "动态 DNS" msgid "" "Dynamic DNS allows that your router can be reached with a fixed hostname " "while having a dynamically changing IP address." -msgstr "动态DNS允许为拥有动态IP的主机配置一个固定的可访问域名." +msgstr "动态 DNS 允许为拥有动态 IP 的主机配置一个固定的可访问域名。" msgid "Enable secure communication with DDNS provider" -msgstr "启用安全连接与DDNS供应商联系" +msgstr "启用安全连接与 DDNS 提供商联系" msgid "Enabled" msgstr "已启用" @@ -219,8 +227,8 @@ msgid "" "Follow this link<br />You will find more hints to optimize your system to " "run DDNS scripts with all options" msgstr "" -"打开这个链接<br />你将会得到更多关于如何通过所有设置项优化你的系统以运行DDNS" -"脚本的提示." +"打开这个链接<br />您将会得到更多关于如何通过所有设置项优化您的系统以运行 " +"DDNS 脚本的提示" msgid "For detailed information about parameter settings look here." msgstr "请看这里获得关于参数设置的详细信息" @@ -229,91 +237,92 @@ msgid "For supported codes look here" msgstr "查看这里获取支持的编码" msgid "Force IP Version" -msgstr "强制设定IP版本" +msgstr "强制设定 IP 版本" msgid "Force IP Version not supported" -msgstr "不支持强制设定IP版本" +msgstr "不支持强制设定 IP 版本" msgid "Force Interval" msgstr "设定周期" msgid "Force TCP on DNS" -msgstr "强制使用TCP进行DNS查询" +msgstr "强制使用 TCP 进行 DNS 查询" msgid "Forced IP Version don't matched" -msgstr "强制设定的IP版本不匹配" +msgstr "强制设定的 IP 版本不匹配" msgid "Format" msgstr "格式" msgid "Format: IP or FQDN" -msgstr "格式:IP或者FQDN" +msgstr "格式:IP 或者 FQDN" msgid "" "GNU Wget will use the IP of given network, cURL will use the physical " "interface." -msgstr "GNU Wget将会使用给定的网络的IP地址,而cURL将会使用物理接口" +msgstr "GNU Wget 将会使用给定的网络的 IP 地址,而 cURL 将会使用物理接口。" msgid "Global Settings" msgstr "全局设置" msgid "HTTPS not supported" -msgstr "不支持HTTPS" +msgstr "不支持 HTTPS" msgid "Hints" msgstr "提示" msgid "Hostname/FQDN to validate, if IP update happen or necessary" -msgstr "" +msgstr "主机名/FQDN 验证,如果 IP 更新发生或必要" msgid "IP address source" -msgstr "IP地址来源" +msgstr "IP 地址来源" msgid "IP address version" -msgstr "IP地址版本" +msgstr "IP 地址版本" msgid "IPv4-Address" -msgstr "IPv4地址" +msgstr "IPv4 地址" msgid "IPv6 address must be given in square brackets" -msgstr "IPv6地址必须填写在中括号(\"[ ]\")内" +msgstr "IPv6 地址必须填写在中括号(\"[ ]\")内" msgid "" "IPv6 is currently not (fully) supported by this system<br />Please follow " "the instructions on OpenWrt's homepage to enable IPv6 support<br />or update " "your system to the latest OpenWrt Release" msgstr "" -"当前系统暂时不能(完整地)支持IPv6<br />请查看OpenWrt首页的介绍以启用IPv6支持" -"<br />或者更新你的系统到最新OpenWrt版本" +"当前系统暂时不能(完整地)支持 IPv6<br />请查看 OpenWrt 首页的介绍以启用 " +"IPv6 支持<br />或者更新您的系统到最新 OpenWrt 版本" msgid "IPv6 not supported" -msgstr "IPv6不被支持" +msgstr "IPv6 不被支持" msgid "IPv6-Address" -msgstr "IPv6地址" +msgstr "IPv6 地址" msgid "If both cURL and GNU Wget are installed, Wget is used by default." -msgstr "如果cURL和GNU Wget同时被安装,那么Wget将会被优先使用." +msgstr "如果 cURL 和 GNU Wget 同时被安装,那么 Wget 将会被优先使用。" msgid "" "If this service section is disabled it could not be started.<br />Neither " "from LuCI interface nor from console" msgstr "" -"如果服务配置被禁用那么它将不能被启动.<br />无论是通过LuCI页面或者是通过终端." +"如果服务配置被禁用,那么它将不能被启动。<br />无论是通过 LuCI 页面或者是通过" +"终端。" msgid "If using secure communication you should verify server certificates!" -msgstr "" +msgstr "如果使用安全通信,您应该验证服务器证书!" msgid "" "If you want to send updates for IPv4 and IPv6 you need to define two " "separate Configurations i.e. 'myddns_ipv4' and 'myddns_ipv6'" msgstr "" -"如果你需要同时更新IPv4和IPv6地址,你需要单独添加两个配置项(例" -"如'myddns_ipv4'和'myddns_ipv6')" +"如果您需要同时更新 IPv4 和 IPv6 地址,您需要单独添加两个配置项(例" +"如'myddns_ipv4'和'myddns_ipv6')" msgid "" "In some versions cURL/libcurl in OpenWrt is compiled without proxy support." -msgstr "OpenWrt中,cURL/libcurl的某些版本编译时没有启用代理服务器支持" +msgstr "OpenWrt 中,cURL/libcurl 的某些版本编译时没有启用代理服务器支持" msgid "Info" msgstr "信息" @@ -322,6 +331,7 @@ msgid "" "Install 'ca-certificates' package or needed certificates by hand into /etc/" "ssl/certs default directory" msgstr "" +"手动将“ca-certificates”包或需要的证书安装到 /etc/ssl/certs 的默认目录中" msgid "Interface" msgstr "接口" @@ -329,18 +339,18 @@ msgstr "接口" msgid "" "Interval to check for changed IP<br />Values below 5 minutes == 300 seconds " "are not supported" -msgstr "检查IP是否改变的时间隔<br />不支持低于5分钟(300秒)的数值." +msgstr "检查 IP 是否改变的时间隔<br />不支持小于 5 分钟(300 秒)的数值。" msgid "" "Interval to force updates send to DDNS Provider<br />Setting this parameter " "to 0 will force the script to only run once<br />Values lower 'Check " "Interval' except '0' are not supported" msgstr "" -"强制向提供商更新DDNS的时间周期<br />把这个参数设置为0将会让脚本仅执行一次" -"<br />不支持低于\"检查时间周期\"的数值(除了0)." +"强制向提供商更新 DDNS 的时间周期<br />将这个参数设置为 0 则会让脚本仅执行一次" +"<br />不支持小于\"检查时间周期\"的数值(除了 0)。" msgid "It is NOT recommended for casual users to change settings on this page." -msgstr "强烈不建议初次使用的用户修改本页设定." +msgstr "强烈不建议初次使用的用户修改本页设定。" msgid "Last Update" msgstr "上次更新" @@ -364,26 +374,28 @@ msgid "Log to syslog" msgstr "把日志记录到系统日志" msgid "Lookup Hostname" -msgstr "" +msgstr "查询主机名" msgid "NOT installed" -msgstr "" +msgstr "未安装" msgid "" "Neither GNU Wget with SSL nor cURL installed to select a network to use for " "communication." -msgstr "包含SSL支持的GNU Wget或者cURL均未被安装.无法选择一个网络用于通信." +msgstr "包含 SSL 支持的 GNU Wget 或者 cURL 均未安装,无法选择网络用于通信。" msgid "" "Neither GNU Wget with SSL nor cURL installed to support secure updates via " "HTTPS protocol." msgstr "" +"包含 SSL 支持的 GNU Wget 或者 cURL 均未安装,无法通过 HTTPS 协议进行安全的更" +"新。" msgid "Network" msgstr "网络" msgid "Network on which the ddns-updater scripts will be started" -msgstr "DDNS更新脚本将会被运行于该网络" +msgstr "DDNS 更新脚本将会运行于该网络" msgid "Never" msgstr "从不" @@ -392,7 +404,7 @@ msgid "Next Update" msgstr "下次更新" msgid "No certificates found" -msgstr "" +msgstr "找不到证书" msgid "No data" msgstr "无数据" @@ -401,7 +413,7 @@ msgid "No logging" msgstr "无日志" msgid "Non-public and by default blocked IP's" -msgstr "非公网IP以及默认被锁定的IP" +msgstr "非公网 IP 以及默认被锁定的 IP" msgid "Notice" msgstr "提示" @@ -410,40 +422,40 @@ msgid "Number of last lines stored in log files" msgstr "日志文件中的最后几行" msgid "OPTIONAL: Force the usage of pure IPv4/IPv6 only communication." -msgstr "可选:强制使用仅IPv4/IPv6通信." +msgstr "可选:强制仅使用 IPv4/IPv6 通信。" msgid "OPTIONAL: Force the use of TCP instead of default UDP on DNS requests." -msgstr "可选:强制使用TCP而非UDP请求DNS." +msgstr "可选:强制使用 TCP 而非 UDP 请求 DNS。" msgid "OPTIONAL: Network to use for communication" -msgstr "可选:用于通信的网络" +msgstr "可选:用于通信的网络" msgid "OPTIONAL: Proxy-Server for detection and updates." -msgstr "可选:用于检测以及更新的代理服务器" +msgstr "可选:用于检测以及更新的代理服务器。" msgid "OPTIONAL: Use non-default DNS-Server to detect 'Registered IP'." -msgstr "可选:使用非默认DNS服务器检测\"已注册的IP地址\"" +msgstr "可选:使用非默认 DNS 服务器检测\"已注册的 IP 地址\"。" msgid "On Error the script will retry the failed action after given time" -msgstr "当出错时,脚本将会重试失败的动作的次数" +msgstr "当出错时,脚本将会重试失败的动作的次数" msgid "On Error the script will stop execution after given number of retrys" -msgstr "当出错时,脚本将会重试该次数之后退出" +msgstr "当出错时,脚本将会重试该次数之后退出" msgid "OpenWrt Wiki" -msgstr "" +msgstr "OpenWrt Wiki" msgid "Optional Encoded Parameter" -msgstr "" +msgstr "可选编码参数" msgid "Optional Parameter" -msgstr "" +msgstr "可选参数" msgid "Optional: Replaces [PARAMENC] in Update-URL (URL-encoded)" -msgstr "" +msgstr "可选:替换更新 URL(已编码 URL)中的 [PARAMENC]" msgid "Optional: Replaces [PARAMOPT] in Update-URL (NOT URL-encoded)" -msgstr "" +msgstr "可选:替换更新 URL(未编码 URL)中的 [PARAMENC]" msgid "Overview" msgstr "总览" @@ -458,7 +470,7 @@ msgid "Password" msgstr "密码" msgid "Path to CA-Certificate" -msgstr "CA证书路径" +msgstr "CA 证书路径" msgid "Please [Save & Apply] your changes first" msgstr "请先保存并应用您的设置" @@ -470,25 +482,25 @@ msgid "Please update to the current version!" msgstr "请更新到最新版本!" msgid "Process ID" -msgstr "处理ID" +msgstr "进程 ID" msgid "Read / Reread log file" msgstr "读取/重新读取日志文件" msgid "Really change DDNS provider?" -msgstr "" +msgstr "确定更改 DDNS 提供商吗?" msgid "Registered IP" -msgstr "已注册的IP地址" +msgstr "已注册的 IP 地址" msgid "Replaces [DOMAIN] in Update-URL" -msgstr "在更新URL中使用[DOMAIN]替换域名" +msgstr "替换更新 URL 中的 [DOMAIN]" msgid "Replaces [PASSWORD] in Update-URL (URL-encoded)" -msgstr "在更新URL中使用[PASSWORD]替换密码" +msgstr "替换更新 URL(已编码 URL)中的 [PASSWORD]" msgid "Replaces [USERNAME] in Update-URL (URL-encoded)" -msgstr "在更新URL中使用[USERNAME]替换用户名" +msgstr "替换更新 URL(已编码 URL)中的 [USERNAME]" msgid "Run once" msgstr "运行一次" @@ -503,13 +515,13 @@ msgid "Software update required" msgstr "需要进行软件更新" msgid "Specifying a DNS-Server is not supported" -msgstr "" +msgstr "不支持指定 DNS 服务器" msgid "Start" -msgstr "启用" +msgstr "启动" msgid "Start / Stop" -msgstr "启用/禁用" +msgstr "启动 / 停止" msgid "Status directory" msgstr "状态目录" @@ -523,7 +535,7 @@ msgid "" msgstr "当前已安装的'ddns-scripts'软件包暂不支持所有可用设置项" msgid "The default setting of '0' will retry infinite." -msgstr "" +msgstr "默认设置“0”将无限重试。" msgid "There is no service configured." msgstr "没有已经配置好的服务项" @@ -532,16 +544,16 @@ msgid "Timer Settings" msgstr "计时器设定" msgid "To change global settings click here" -msgstr "点击这里以更改全局设置" +msgstr "点击这里更改全局设置" msgid "To use cURL activate this option." -msgstr "选中这个项以使用cURL" +msgstr "选中此项以使用 cURL" msgid "URL" msgstr "URL" msgid "URL to detect" -msgstr "用于检测的URL" +msgstr "用于检测的 URL" msgid "Unknown error" msgstr "未知错误" @@ -550,25 +562,26 @@ msgid "" "Update URL to be used for updating your DDNS Provider.<br />Follow " "instructions you will find on their WEB page." msgstr "" -"DDNS提供商用于更新DDNS的URL<br />跟随教程你将会在它们的网站上提供这个URL." +"DDNS 提供商用于更新 DDNS 的 URL。<br />跟随教程,您可以在它们的网站上找到这" +"个 URL。" msgid "Update error" msgstr "更新错误" msgid "Use HTTP Secure" -msgstr "使用HTTPS" +msgstr "使用 HTTPS" msgid "Use cURL" -msgstr "使用cURL" +msgstr "使用 cURL" msgid "User defined script to read systems IP-Address" -msgstr "使用设定的脚本来读取系统IP地址" +msgstr "使用设定的脚本来读取系统 IP 地址" msgid "Username" msgstr "用户名" msgid "Using specific DNS Server not supported" -msgstr "" +msgstr "不支持使用特定的 DNS 服务器" msgid "Verify" msgstr "验证" @@ -587,49 +600,51 @@ msgstr "等待" msgid "" "Writes detailed messages to log file. File will be truncated automatically." -msgstr "向日志中写入详细信息.文件将会被自动减小." +msgstr "向日志中写入详细信息。文件将自动缩小。" msgid "" "Writes log messages to syslog. Critical Errors will always be written to " "syslog." -msgstr "把日志写入系统日志.无论是否启用这项,错误信息总是会被写入系统日志" +msgstr "把日志写入系统日志。无论是否启用这项,错误信息总是会被写入系统日志。" msgid "" "You should install 'bind-host' or 'knot-host' or 'drill' or 'hostip' " "package, if you need to specify a DNS server to detect your registered IP." msgstr "" +"如果您需要指定 DNS 服务器来检测您注册的 IP,您应该安装“bind-host”或“knot-" +"host”或“drill”或“hostip”软件包。" msgid "" "You should install 'bind-host' or 'knot-host' or 'drill' package for DNS " "requests." -msgstr "" +msgstr "您应该为 DNS 请求安装“bind-host”或“knot-host”或“drill”软件包。" msgid "You should install 'wget' or 'curl' or 'uclient-fetch' package." -msgstr "" +msgstr "您应该安装“wget”或“curl”或“uclient-fetch”软件包。" msgid "" "You should install 'wget' or 'curl' or 'uclient-fetch' with 'libustream-" "*ssl' package." -msgstr "" +msgstr "您应该安装“wget”或“curl”或“uclient-fetch”,及“libustream-*ssl”软件包。" msgid "You should install 'wget' or 'curl' package." -msgstr "" +msgstr "您应该安装“wget”或“curl”软件包。" msgid "" "You should install 'wget' or 'uclient-fetch' package or replace libcurl." -msgstr "" +msgstr "您应该安装“wget”或“uclient-fetch”软件包,或替换 libcurl。" msgid "cURL is installed, but libcurl was compiled without proxy support." -msgstr "cURL已经安装,但是libcurl编译时没有启用代理支持." +msgstr "cURL 已经安装,但是 libcurl 编译时没有启用代理支持。" msgid "cURL without Proxy Support" -msgstr "cURL不包含代理支持" +msgstr "cURL 没有包含代理支持" msgid "can not detect local IP. Please select a different Source combination" -msgstr "不能确定本地IP.请更换IP来源." +msgstr "无法确定本地 IP。请更换 IP 来源。" msgid "can not resolve host:" -msgstr "不能解析主机:" +msgstr "无法解析主机:" msgid "config error" msgstr "配置错误" @@ -641,7 +656,7 @@ msgid "directory or path/file" msgstr "目录或者到文件的路径" msgid "either url or script could be set" -msgstr "接受URL或者脚本" +msgstr "接受 URL 或者脚本" msgid "enable here" msgstr "在这里启用" @@ -659,16 +674,16 @@ msgid "installed" msgstr "已安装" msgid "invalid FQDN / required - Sample" -msgstr "" +msgstr "FQDN 无效 / 必需 - 示例" msgid "minimum value '0'" -msgstr "最小值0" +msgstr "最小值 0" msgid "minimum value '1'" -msgstr "最小值1" +msgstr "最小值 1" msgid "minimum value 5 minutes == 300 seconds" -msgstr "最小值为5分钟(300秒)" +msgstr "最小值为 5 分钟(300 秒)" msgid "minutes" msgstr "分钟" @@ -683,7 +698,7 @@ msgid "must start with 'http://'" msgstr "必须以'http://'开头" msgid "nc (netcat) can not connect" -msgstr "nc(netcat)不可连接" +msgstr "nc(netcat)不可连接" msgid "never" msgstr "从不" @@ -692,10 +707,10 @@ msgid "no data" msgstr "无数据" msgid "not found or not executable - Sample: '/path/to/script.sh'" -msgstr "未找到或者不可执行 - 示例: '/path/to/script.sh'" +msgstr "未找到或者不可执行 - 示例:“/path/to/script.sh”" msgid "nslookup can not resolve host" -msgstr "nslookup不能解析主机" +msgstr "nslookup 不能解析主机" msgid "or" msgstr "或者" @@ -710,10 +725,10 @@ msgid "please remove entry" msgstr "请移除该字段" msgid "please select 'IPv4' address version" -msgstr "请设定IPv4地址" +msgstr "请设定 IPv4 地址" msgid "please select 'IPv4' address version in" -msgstr "请设定IPv4地址于" +msgstr "请设定 IPv4 地址于" msgid "please set to 'default'" msgstr "请设置为\"默认\"" @@ -728,7 +743,7 @@ msgid "seconds" msgstr "秒" msgid "to run HTTPS without verification of server certificates (insecure)" -msgstr "使用HTTPS但不检查服务器证书(不安全)" +msgstr "使用 HTTPS 但不检查服务器证书(不安全)" msgid "unknown error" msgstr "未知错误" @@ -737,7 +752,7 @@ msgid "unspecific error" msgstr "未指定的错误" msgid "use hostname, FQDN, IPv4- or IPv6-Address" -msgstr "使用主机名或IPv4/IPv6地址" +msgstr "使用主机名或 IPv4/IPv6 地址" #~ msgid "" #~ "Neither GNU Wget with SSL nor cURL installed to support updates via HTTPS " @@ -745,13 +760,13 @@ msgstr "使用主机名或IPv4/IPv6地址" #~ msgstr "包含SSL支持的GNU Wget或者cURL均未被安装.无法使用HTTPS更新DDNS" #~ msgid "You should install BIND host package for DNS requests." -#~ msgstr "你需要安装BIND以请求DNS记录." +#~ msgstr "您需要安装BIND以请求DNS记录." #~ msgid "You should install GNU Wget with SSL (preferred) or cURL package." -#~ msgstr "你需要安装包含SSL支持的GNU Wget(推荐)或是cURL软件包." +#~ msgstr "您需要安装包含SSL支持的GNU Wget(推荐)或是cURL软件包." #~ msgid "You should install GNU Wget with SSL or cURL package." -#~ msgstr "你需要安装包含SSL支持的GNU Wget或是cURL软件包." +#~ msgstr "您需要安装包含SSL支持的GNU Wget或是cURL软件包." #~ msgid "You should install GNU Wget with SSL or replace libcurl." -#~ msgstr "你需要安装包含SSL支持的GNU Wget或替换libcurl." +#~ msgstr "您需要安装包含SSL支持的GNU Wget或替换libcurl." diff --git a/applications/luci-app-ddns/po/zh-tw/ddns.po b/applications/luci-app-ddns/po/zh-tw/ddns.po index ae0aaba8d9..f378b39738 100644 --- a/applications/luci-app-ddns/po/zh-tw/ddns.po +++ b/applications/luci-app-ddns/po/zh-tw/ddns.po @@ -1,728 +1,772 @@ +# +# Yangfl <mmyangfl@gmail.com>, 2017. +# msgid "" msgstr "" "Project-Id-Version: luci-app-ddns 2.4.0-1\n" "POT-Creation-Date: 2016-01-30 11:07+0100\n" -"PO-Revision-Date: 2013-08-07 15:53+0200\n" -"Last-Translator: Ethan <ethan42411@gmail.com>\n" -"Language-Team: \n" +"PO-Revision-Date: 2017-10-29 14:14+0800\n" +"Last-Translator: Yangfl <mmyangfl@gmail.com>\n" "Language: zh_TW\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Poedit 1.8.4\n" +"X-Generator: Gtranslator 2.91.7\n" +"Language-Team: <debian-l10n-chinese@lists.debian.org>\n" msgid "&" -msgstr "" +msgstr "&" msgid "-- custom --" -msgstr "" +msgstr "-- 自定義 --" msgid "-- default --" -msgstr "" +msgstr "-- 預設 --" msgid "Advanced Settings" -msgstr "" +msgstr "高階設定" msgid "Allow non-public IP's" -msgstr "" +msgstr "允許非公網 IP" msgid "Applying changes" -msgstr "" +msgstr "正在應用更改" msgid "Basic Settings" -msgstr "" +msgstr "基礎設定" msgid "" "Below a list of configuration tips for your system to run Dynamic DNS " "updates without limitations" -msgstr "" +msgstr "以下是一個能夠讓您的系統不受限制地進行動態 DNS 更新設定的提示列表" msgid "" "Below is a list of configured DDNS configurations and their current state." -msgstr "" +msgstr "以下是當前已經配置好的 DDNS 設定項列表以及它們的當前狀態。" msgid "Bind Network" -msgstr "" +msgstr "使用的介面" msgid "Binding to a specific network not supported" -msgstr "" +msgstr "不支援繫結到一個指定的網路" msgid "" "BusyBox's nslookup and Wget do not support to specify the IP version to use " "for communication with DDNS Provider!" msgstr "" +"與 DDNS 供應商通訊時,BusyBox 的 nslookup 和 Wget 不支援設定特定的 IP 協議版" +"本。" msgid "" "BusyBox's nslookup and hostip do not support to specify to use TCP instead " "of default UDP when requesting DNS server!" msgstr "" +"向 DNS 伺服器查詢時,BusyBox 的 nslookup 和 hostip 不支援使用 TCP 而不是預設" +"的 UDP!" msgid "" "BusyBox's nslookup in the current compiled version does not handle given DNS " "Servers correctly!" -msgstr "" +msgstr "當前編譯版本中 BusyBox 的 nslookup 在處理給定的 DNS 伺服器不正確!" msgid "Casual users should not change this setting" -msgstr "" +msgstr "普通使用者不應該改變這個設定" msgid "Change provider" -msgstr "" +msgstr "更改提供者" msgid "Check Interval" -msgstr "" +msgstr "檢查時間週期" msgid "Collecting data..." -msgstr "" +msgstr "正在收集資料..." msgid "Config error" -msgstr "" +msgstr "配置錯誤" msgid "Configuration" -msgstr "" +msgstr "設定" msgid "" "Configure here the details for all Dynamic DNS services including this LuCI " "application." -msgstr "" +msgstr "在這裡修改動態 DNS 服務的詳細配置。" msgid "Configure here the details for selected Dynamic DNS service." -msgstr "" +msgstr "在這裡修改選擇的 DDNS 服務的詳細配置。" msgid "Current setting" -msgstr "" +msgstr "當前設定" msgid "" "Currently DDNS updates are not started at boot or on interface events.<br /" ">This is the default if you run DDNS scripts by yourself (i.e. via cron with " "force_interval set to '0')" msgstr "" +"現在,DDNS 更新在開機或者介面動作時不會被觸發。<br />如果您手工執行 DDNS 指令" +"碼的話(例如使用 cron 時把 force_interval 設定為 0),這是預設設定。" msgid "" "Currently DDNS updates are not started at boot or on interface events.<br /" ">You can start/stop each configuration here. It will run until next reboot." msgstr "" +"現在,DDNS 更新在開機或者介面動作時不會被觸發。<br />您可以在這裡開始/停止每" +"一個設定的條目。它在下次重啟之前一直有效。" msgid "Custom update script to be used for updating your DDNS Provider." -msgstr "" +msgstr "用來更新動態 DNS 的自定義指令碼。" msgid "Custom update-URL" -msgstr "自訂更新的URL" +msgstr "自定義更新 URL" msgid "Custom update-script" -msgstr "" +msgstr "自定義更新指令碼" msgid "DDNS Autostart disabled" -msgstr "" +msgstr "DDNS 自動啟動已禁用。" msgid "DDNS Client Configuration" -msgstr "" +msgstr "DDNS 客戶端配置" msgid "DDNS Client Documentation" -msgstr "" +msgstr "DDNS 客戶端文件" msgid "DDNS Service provider" -msgstr "" +msgstr "DDNS 服務提供商" msgid "DNS requests via TCP not supported" -msgstr "" +msgstr "不支援使用 TCP 進行 DNS 解析" msgid "DNS-Server" -msgstr "" +msgstr "DNS-伺服器" msgid "Date format" -msgstr "" +msgstr "日期格式" msgid "Defines the Web page to read systems IPv4-Address from" -msgstr "" +msgstr "設定用來讀取系統 IPv4 位址的網頁" msgid "Defines the Web page to read systems IPv6-Address from" -msgstr "" +msgstr "設定用來讀取系統 IPv6 位址的網頁" msgid "Defines the interface to read systems IP-Address from" -msgstr "" +msgstr "設定用來讀取系統 IP 位址的介面" msgid "Defines the network to read systems IPv4-Address from" -msgstr "" +msgstr "設定用來讀取系統 IPv4 位址的網路" msgid "Defines the network to read systems IPv6-Address from" -msgstr "" +msgstr "設定用來讀取系統 IPv6 位址的網路" msgid "" "Defines the source to read systems IPv4-Address from, that will be send to " "the DDNS provider" -msgstr "" +msgstr "設定 IPv4 位址的來源。這將會被髮送給 DDNS 提供商" msgid "" "Defines the source to read systems IPv6-Address from, that will be send to " "the DDNS provider" -msgstr "" +msgstr "設定 IPv6 位址的來源。這將會被髮送給 DDNS 提供商" msgid "Defines which IP address 'IPv4/IPv6' is send to the DDNS provider" -msgstr "" +msgstr "設定哪一個 IP 位址(IPv4 或 IPv6)會被髮送給 DDNS 提供商" msgid "Details for" -msgstr "" +msgstr "詳情" msgid "Directory contains Log files for each running section" -msgstr "" +msgstr "儲存每一個執行中的設定的執行日誌的目錄" msgid "" "Directory contains PID and other status information for each running section" -msgstr "" +msgstr "儲存每個執行中的設定的PID以及其它狀態資訊的目錄" msgid "Disabled" -msgstr "" +msgstr "已禁用" msgid "Domain" -msgstr "" +msgstr "域名" msgid "Dynamic DNS" -msgstr "動態DNS" +msgstr "動態 DNS" msgid "" "Dynamic DNS allows that your router can be reached with a fixed hostname " "while having a dynamically changing IP address." -msgstr "" -"動態DNS允許為主機配置一個固定的網域名稱,但該網路名稱卻是對應到動態的IP位置" +msgstr "動態 DNS 允許為擁有動態 IP 的主機配置一個固定的可訪問域名。" msgid "Enable secure communication with DDNS provider" -msgstr "" +msgstr "啟用安全連線與 DDNS 提供商聯絡" msgid "Enabled" -msgstr "" +msgstr "已啟用" msgid "Error" -msgstr "" +msgstr "錯誤" msgid "Error Retry Counter" -msgstr "" +msgstr "錯誤重試計數" msgid "Error Retry Interval" -msgstr "" +msgstr "錯誤重試間隔" msgid "Event Network" -msgstr "" +msgstr "事件網路" msgid "File" -msgstr "" +msgstr "檔案" msgid "File not found" -msgstr "" +msgstr "檔案未找到" msgid "File not found or empty" -msgstr "" +msgstr "檔案未找到或為空" msgid "" "Follow this link<br />You will find more hints to optimize your system to " "run DDNS scripts with all options" msgstr "" +"開啟這個連結<br />您將會得到更多關於如何通過所有設定項優化您的系統以執行 " +"DDNS 指令碼的提示" msgid "For detailed information about parameter settings look here." -msgstr "" +msgstr "請看這裡獲得關於引數設定的詳細資訊" msgid "For supported codes look here" -msgstr "" +msgstr "檢視這裡獲取支援的編碼" msgid "Force IP Version" -msgstr "" +msgstr "強制設定 IP 版本" msgid "Force IP Version not supported" -msgstr "" +msgstr "不支援強制設定 IP 版本" msgid "Force Interval" -msgstr "" +msgstr "設定週期" msgid "Force TCP on DNS" -msgstr "" +msgstr "強制使用 TCP 進行 DNS 查詢" msgid "Forced IP Version don't matched" -msgstr "" +msgstr "強制設定的 IP 版本不匹配" msgid "Format" -msgstr "" +msgstr "格式" msgid "Format: IP or FQDN" -msgstr "" +msgstr "格式:IP 或者 FQDN" msgid "" "GNU Wget will use the IP of given network, cURL will use the physical " "interface." -msgstr "" +msgstr "GNU Wget 將會使用給定的網路的 IP 位址,而 cURL 將會使用物理介面。" msgid "Global Settings" -msgstr "" +msgstr "全域性設定" msgid "HTTPS not supported" -msgstr "" +msgstr "不支援 HTTPS" msgid "Hints" -msgstr "" +msgstr "提示" msgid "Hostname/FQDN to validate, if IP update happen or necessary" -msgstr "" +msgstr "主機名/FQDN 驗證,如果 IP 更新發生或必要" msgid "IP address source" -msgstr "" +msgstr "IP 位址來源" msgid "IP address version" -msgstr "" +msgstr "IP 位址版本" msgid "IPv4-Address" -msgstr "" +msgstr "IPv4 位址" msgid "IPv6 address must be given in square brackets" -msgstr "" +msgstr "IPv6 位址必須填寫在中括號(\"[ ]\")內" msgid "" "IPv6 is currently not (fully) supported by this system<br />Please follow " "the instructions on OpenWrt's homepage to enable IPv6 support<br />or update " "your system to the latest OpenWrt Release" msgstr "" +"當前系統暫時不能(完整地)支援 IPv6<br />請檢視 OpenWrt 首頁的介紹以啟用 " +"IPv6 支援<br />或者更新您的系統到最新 OpenWrt 版本" msgid "IPv6 not supported" -msgstr "" +msgstr "IPv6 不被支援" msgid "IPv6-Address" -msgstr "" +msgstr "IPv6 位址" msgid "If both cURL and GNU Wget are installed, Wget is used by default." -msgstr "" +msgstr "如果 cURL 和 GNU Wget 同時被安裝,那麼 Wget 將會被優先使用。" msgid "" "If this service section is disabled it could not be started.<br />Neither " "from LuCI interface nor from console" msgstr "" +"如果服務配置被禁用,那麼它將不能被啟動。<br />無論是通過 LuCI 頁面或者是通過" +"終端。" msgid "If using secure communication you should verify server certificates!" -msgstr "" +msgstr "如果使用安全通訊,您應該驗證伺服器證書!" msgid "" "If you want to send updates for IPv4 and IPv6 you need to define two " "separate Configurations i.e. 'myddns_ipv4' and 'myddns_ipv6'" msgstr "" +"如果您需要同時更新 IPv4 和 IPv6 位址,您需要單獨新增兩個配置項(例" +"如'myddns_ipv4'和'myddns_ipv6')" msgid "" "In some versions cURL/libcurl in OpenWrt is compiled without proxy support." -msgstr "" +msgstr "OpenWrt 中,cURL/libcurl 的某些版本編譯時沒有啟用代理伺服器支援" msgid "Info" -msgstr "" +msgstr "資訊" msgid "" "Install 'ca-certificates' package or needed certificates by hand into /etc/" "ssl/certs default directory" msgstr "" +"手動將“ca-certificates”包或需要的證書安裝到 /etc/ssl/certs 的預設目錄中" msgid "Interface" -msgstr "界面" +msgstr "介面" msgid "" "Interval to check for changed IP<br />Values below 5 minutes == 300 seconds " "are not supported" -msgstr "" +msgstr "檢查 IP 是否改變的時間隔<br />不支援小於 5 分鐘(300 秒)的數值。" msgid "" "Interval to force updates send to DDNS Provider<br />Setting this parameter " "to 0 will force the script to only run once<br />Values lower 'Check " "Interval' except '0' are not supported" msgstr "" +"強制向提供商更新 DDNS 的時間週期<br />將這個引數設定為 0 則會讓指令碼僅執行一" +"次<br />不支援小於\"檢查時間週期\"的數值(除了 0)。" msgid "It is NOT recommended for casual users to change settings on this page." -msgstr "" +msgstr "強烈不建議初次使用的使用者修改本頁設定。" msgid "Last Update" -msgstr "" +msgstr "上次更新" msgid "Loading" -msgstr "" +msgstr "載入中" msgid "Log File Viewer" -msgstr "" +msgstr "日誌檢視器" msgid "Log directory" -msgstr "" +msgstr "日誌目錄" msgid "Log length" -msgstr "" +msgstr "日誌長度" msgid "Log to file" -msgstr "" +msgstr "把日誌記錄到檔案" msgid "Log to syslog" -msgstr "" +msgstr "把日誌記錄到系統日誌" msgid "Lookup Hostname" -msgstr "" +msgstr "查詢主機名" msgid "NOT installed" -msgstr "" +msgstr "未安裝" msgid "" "Neither GNU Wget with SSL nor cURL installed to select a network to use for " "communication." -msgstr "" +msgstr "包含 SSL 支援的 GNU Wget 或者 cURL 均未安裝,無法選擇網路用於通訊。" msgid "" "Neither GNU Wget with SSL nor cURL installed to support secure updates via " "HTTPS protocol." msgstr "" +"包含 SSL 支援的 GNU Wget 或者 cURL 均未安裝,無法通過 HTTPS 協議進行安全的更" +"新。" msgid "Network" msgstr "網路" msgid "Network on which the ddns-updater scripts will be started" -msgstr "" +msgstr "DDNS 更新指令碼將會運行於該網路" msgid "Never" -msgstr "" +msgstr "從不" msgid "Next Update" -msgstr "" +msgstr "下次更新" msgid "No certificates found" -msgstr "" +msgstr "找不到證書" msgid "No data" -msgstr "" +msgstr "無資料" msgid "No logging" -msgstr "" +msgstr "無日誌" msgid "Non-public and by default blocked IP's" -msgstr "" +msgstr "非公網 IP 以及預設被鎖定的 IP" msgid "Notice" -msgstr "" +msgstr "提示" msgid "Number of last lines stored in log files" -msgstr "" +msgstr "日誌檔案中的最後幾行" msgid "OPTIONAL: Force the usage of pure IPv4/IPv6 only communication." -msgstr "" +msgstr "可選:強制僅使用 IPv4/IPv6 通訊。" msgid "OPTIONAL: Force the use of TCP instead of default UDP on DNS requests." -msgstr "" +msgstr "可選:強制使用 TCP 而非 UDP 請求 DNS。" msgid "OPTIONAL: Network to use for communication" -msgstr "" +msgstr "可選:用於通訊的網路" msgid "OPTIONAL: Proxy-Server for detection and updates." -msgstr "" +msgstr "可選:用於檢測以及更新的代理伺服器。" msgid "OPTIONAL: Use non-default DNS-Server to detect 'Registered IP'." -msgstr "" +msgstr "可選:使用非預設 DNS 伺服器檢測\"已註冊的 IP 位址\"。" msgid "On Error the script will retry the failed action after given time" -msgstr "" +msgstr "當出錯時,指令碼將會重試失敗的動作的次數" msgid "On Error the script will stop execution after given number of retrys" -msgstr "" +msgstr "當出錯時,指令碼將會重試該次數之後退出" msgid "OpenWrt Wiki" -msgstr "" +msgstr "OpenWrt Wiki" msgid "Optional Encoded Parameter" -msgstr "" +msgstr "可選編碼引數" msgid "Optional Parameter" -msgstr "" +msgstr "可選引數" msgid "Optional: Replaces [PARAMENC] in Update-URL (URL-encoded)" -msgstr "" +msgstr "可選:替換更新 URL(已編碼 URL)中的 [PARAMENC]" msgid "Optional: Replaces [PARAMOPT] in Update-URL (NOT URL-encoded)" -msgstr "" +msgstr "可選:替換更新 URL(未編碼 URL)中的 [PARAMENC]" msgid "Overview" -msgstr "" +msgstr "總覽" msgid "PROXY-Server" -msgstr "" +msgstr "代理伺服器" msgid "PROXY-Server not supported" -msgstr "" +msgstr "不支援代理伺服器" msgid "Password" msgstr "密碼" msgid "Path to CA-Certificate" -msgstr "" +msgstr "CA 證書路徑" msgid "Please [Save & Apply] your changes first" -msgstr "" +msgstr "請先儲存並應用您的設定" msgid "Please press [Read] button" -msgstr "" +msgstr "請按下\"讀取\"按鈕" msgid "Please update to the current version!" -msgstr "" +msgstr "請更新到最新版本!" msgid "Process ID" -msgstr "" +msgstr "程序 ID" msgid "Read / Reread log file" -msgstr "" +msgstr "讀取/重新讀取日誌檔案" msgid "Really change DDNS provider?" -msgstr "" +msgstr "確定更改 DDNS 提供商嗎?" msgid "Registered IP" -msgstr "" +msgstr "已註冊的 IP 位址" msgid "Replaces [DOMAIN] in Update-URL" -msgstr "" +msgstr "替換更新 URL 中的 [DOMAIN]" msgid "Replaces [PASSWORD] in Update-URL (URL-encoded)" -msgstr "" +msgstr "替換更新 URL(已編碼 URL)中的 [PASSWORD]" msgid "Replaces [USERNAME] in Update-URL (URL-encoded)" -msgstr "" +msgstr "替換更新 URL(已編碼 URL)中的 [USERNAME]" msgid "Run once" -msgstr "" +msgstr "執行一次" msgid "Script" -msgstr "" +msgstr "指令碼" msgid "Show more" -msgstr "" +msgstr "檢視更多" msgid "Software update required" -msgstr "" +msgstr "需要進行軟體更新" msgid "Specifying a DNS-Server is not supported" -msgstr "" +msgstr "不支援指定 DNS 伺服器" msgid "Start" -msgstr "" +msgstr "啟動" msgid "Start / Stop" -msgstr "" +msgstr "啟動 / 停止" msgid "Status directory" -msgstr "" +msgstr "狀態目錄" msgid "Stopped" -msgstr "" +msgstr "已停止" msgid "" "The currently installed 'ddns-scripts' package did not support all available " "settings." -msgstr "" +msgstr "當前已安裝的'ddns-scripts'軟體包暫不支援所有可用設定項" msgid "The default setting of '0' will retry infinite." -msgstr "" +msgstr "預設設定“0”將無限重試。" msgid "There is no service configured." -msgstr "" +msgstr "沒有已經配置好的服務項" msgid "Timer Settings" -msgstr "" +msgstr "計時器設定" msgid "To change global settings click here" -msgstr "" +msgstr "點選這裡更改全域性設定" msgid "To use cURL activate this option." -msgstr "" +msgstr "選中此項以使用 cURL" msgid "URL" msgstr "URL" msgid "URL to detect" -msgstr "" +msgstr "用於檢測的 URL" msgid "Unknown error" -msgstr "" +msgstr "未知錯誤" msgid "" "Update URL to be used for updating your DDNS Provider.<br />Follow " "instructions you will find on their WEB page." msgstr "" +"DDNS 提供商用於更新 DDNS 的 URL。<br />跟隨教程,您可以在它們的網站上找到這" +"個 URL。" msgid "Update error" -msgstr "" +msgstr "更新錯誤" msgid "Use HTTP Secure" -msgstr "" +msgstr "使用 HTTPS" msgid "Use cURL" -msgstr "" +msgstr "使用 cURL" msgid "User defined script to read systems IP-Address" -msgstr "" +msgstr "使用設定的指令碼來讀取系統 IP 位址" msgid "Username" msgstr "使用者名稱" msgid "Using specific DNS Server not supported" -msgstr "" +msgstr "不支援使用特定的 DNS 伺服器" msgid "Verify" -msgstr "" +msgstr "驗證" msgid "Version" -msgstr "" +msgstr "版本" msgid "Version Information" -msgstr "" +msgstr "版本資訊" msgid "Waiting for changes to be applied..." -msgstr "" +msgstr "正在應用更改..." msgid "Warning" -msgstr "" +msgstr "等待" msgid "" "Writes detailed messages to log file. File will be truncated automatically." -msgstr "" +msgstr "向日志中寫入詳細資訊。檔案將自動縮小。" msgid "" "Writes log messages to syslog. Critical Errors will always be written to " "syslog." -msgstr "" +msgstr "把日誌寫入系統日誌。無論是否啟用這項,錯誤資訊總是會被寫入系統日誌。" msgid "" "You should install 'bind-host' or 'knot-host' or 'drill' or 'hostip' " "package, if you need to specify a DNS server to detect your registered IP." msgstr "" +"如果您需要指定 DNS 伺服器來檢測您註冊的 IP,您應該安裝“bind-host”或“knot-" +"host”或“drill”或“hostip”軟體包。" msgid "" "You should install 'bind-host' or 'knot-host' or 'drill' package for DNS " "requests." -msgstr "" +msgstr "您應該為 DNS 請求安裝“bind-host”或“knot-host”或“drill”軟體包。" msgid "You should install 'wget' or 'curl' or 'uclient-fetch' package." -msgstr "" +msgstr "您應該安裝“wget”或“curl”或“uclient-fetch”軟體包。" msgid "" "You should install 'wget' or 'curl' or 'uclient-fetch' with 'libustream-" "*ssl' package." -msgstr "" +msgstr "您應該安裝“wget”或“curl”或“uclient-fetch”,及“libustream-*ssl”軟體包。" msgid "You should install 'wget' or 'curl' package." -msgstr "" +msgstr "您應該安裝“wget”或“curl”軟體包。" msgid "" "You should install 'wget' or 'uclient-fetch' package or replace libcurl." -msgstr "" +msgstr "您應該安裝“wget”或“uclient-fetch”軟體包,或替換 libcurl。" msgid "cURL is installed, but libcurl was compiled without proxy support." -msgstr "" +msgstr "cURL 已經安裝,但是 libcurl 編譯時沒有啟用代理支援。" msgid "cURL without Proxy Support" -msgstr "" +msgstr "cURL 沒有包含代理支援" msgid "can not detect local IP. Please select a different Source combination" -msgstr "" +msgstr "無法確定本地 IP。請更換 IP 來源。" msgid "can not resolve host:" -msgstr "" +msgstr "無法解析主機:" msgid "config error" -msgstr "" +msgstr "配置錯誤" msgid "days" -msgstr "" +msgstr "天" msgid "directory or path/file" -msgstr "" +msgstr "目錄或者到檔案的路徑" msgid "either url or script could be set" -msgstr "" +msgstr "接受 URL 或者指令碼" msgid "enable here" -msgstr "" +msgstr "在這裡啟用" msgid "file or directory not found or not 'IGNORE'" -msgstr "" +msgstr "檔案或目錄未找到或未\"被忽視\"" msgid "help" -msgstr "" +msgstr "幫助" msgid "hours" -msgstr "" +msgstr "小時" msgid "installed" -msgstr "" +msgstr "已安裝" msgid "invalid FQDN / required - Sample" -msgstr "" +msgstr "FQDN 無效 / 必需 - 示例" msgid "minimum value '0'" -msgstr "" +msgstr "最小值 0" msgid "minimum value '1'" -msgstr "" +msgstr "最小值 1" msgid "minimum value 5 minutes == 300 seconds" -msgstr "" +msgstr "最小值為 5 分鐘(300 秒)" msgid "minutes" -msgstr "" +msgstr "分鐘" msgid "missing / required" -msgstr "" +msgstr "必須填寫" msgid "must be greater or equal 'Check Interval'" -msgstr "" +msgstr "必須大於或等於\"檢查時間週期\"" msgid "must start with 'http://'" -msgstr "" +msgstr "必須以'http://'開頭" msgid "nc (netcat) can not connect" -msgstr "" +msgstr "nc(netcat)不可連線" msgid "never" -msgstr "" +msgstr "從不" msgid "no data" -msgstr "" +msgstr "無資料" msgid "not found or not executable - Sample: '/path/to/script.sh'" -msgstr "" +msgstr "未找到或者不可執行 - 示例:“/path/to/script.sh”" msgid "nslookup can not resolve host" -msgstr "" +msgstr "nslookup 不能解析主機" msgid "or" -msgstr "" +msgstr "或者" msgid "or higher" -msgstr "" +msgstr "或者更大" msgid "please disable" -msgstr "" +msgstr "請禁用" msgid "please remove entry" -msgstr "" +msgstr "請移除該欄位" msgid "please select 'IPv4' address version" -msgstr "" +msgstr "請設定 IPv4 位址" msgid "please select 'IPv4' address version in" -msgstr "" +msgstr "請設定 IPv4 位址於" msgid "please set to 'default'" -msgstr "" +msgstr "請設定為\"預設\"" msgid "proxy port missing" -msgstr "" +msgstr "代理埠未填" msgid "required" -msgstr "" +msgstr "必須填寫" msgid "seconds" -msgstr "" +msgstr "秒" msgid "to run HTTPS without verification of server certificates (insecure)" -msgstr "" +msgstr "使用 HTTPS 但不檢查伺服器證書(不安全)" msgid "unknown error" -msgstr "" +msgstr "未知錯誤" msgid "unspecific error" -msgstr "" +msgstr "未指定的錯誤" msgid "use hostname, FQDN, IPv4- or IPv6-Address" -msgstr "" +msgstr "使用主機名或 IPv4/IPv6 位址" + +#~ msgid "" +#~ "Neither GNU Wget with SSL nor cURL installed to support updates via HTTPS " +#~ "protocol." +#~ msgstr "包含SSL支援的GNU Wget或者cURL均未被安裝.無法使用HTTPS更新DDNS" + +#~ msgid "You should install BIND host package for DNS requests." +#~ msgstr "您需要安裝BIND以請求DNS記錄." + +#~ msgid "You should install GNU Wget with SSL (preferred) or cURL package." +#~ msgstr "您需要安裝包含SSL支援的GNU Wget(推薦)或是cURL軟體包." + +#~ msgid "You should install GNU Wget with SSL or cURL package." +#~ msgstr "您需要安裝包含SSL支援的GNU Wget或是cURL軟體包." + +#~ msgid "You should install GNU Wget with SSL or replace libcurl." +#~ msgstr "您需要安裝包含SSL支援的GNU Wget或替換libcurl." |