diff options
9 files changed, 1481 insertions, 20 deletions
diff --git a/applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/forwards.js b/applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/forwards.js index ffbfe3ccd..63af69f8a 100644 --- a/applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/forwards.js +++ b/applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/forwards.js @@ -107,6 +107,16 @@ return L.view.extend({ return uci.get('firewall', section_id, 'name') || _('Unnamed forward'); }; + s.handleAdd = function(ev) { + var config_name = this.uciconfig || this.map.config, + section_id = uci.add(config_name, this.sectiontype); + + uci.set(config_name, section_id, 'target', 'DNAT'); + + this.addedSection = section_id; + this.renderMoreOptionsModal(section_id); + }; + o = s.taboption('general', form.Value, 'name', _('Name')); o.placeholder = _('Unnamed forward'); o.modalonly = true; diff --git a/applications/luci-app-https_dns_proxy/Makefile b/applications/luci-app-https_dns_proxy/Makefile index 2ae2b80f2..afc160723 100644 --- a/applications/luci-app-https_dns_proxy/Makefile +++ b/applications/luci-app-https_dns_proxy/Makefile @@ -10,7 +10,7 @@ LUCI_TITLE:=HTTPS DNS Proxy Web UI LUCI_DESCRIPTION:=Provides Web UI for HTTPS DNS Proxy LUCI_DEPENDS:=+luci-mod-admin-full +https_dns_proxy LUCI_PKGARCH:=all -PKG_RELEASE:=2 +PKG_RELEASE:=3 include ../../luci.mk diff --git a/applications/luci-app-https_dns_proxy/luasrc/model/cbi/https_dns_proxy.lua b/applications/luci-app-https_dns_proxy/luasrc/model/cbi/https_dns_proxy.lua index 20d486f37..03a3b4e08 100644 --- a/applications/luci-app-https_dns_proxy/luasrc/model/cbi/https_dns_proxy.lua +++ b/applications/luci-app-https_dns_proxy/luasrc/model/cbi/https_dns_proxy.lua @@ -1,4 +1,41 @@ local uci = require("luci.model.uci").cursor() +function uci_del_list(conf, sect, opt, value) + local lval = uci:get(conf, sect, opt) + if lval == nil or lval == "" then + lval = {} + elseif type(lval) ~= "table" then + lval = { lval } + end + + local i + local changed = false + for i = #lval, 1 do + if lval[i] == value then + table.remove(lval, i) + changed = true + end + end + + if changed then + if #lval > 0 then + uci:set(conf, sect, opt, lval) + else + uci:delete(conf, sect, opt) + end + end +end + +function uci_add_list(conf, sect, opt, value) + local lval = uci:get(conf, sect, opt) + if lval == nil or lval == "" then + lval = {} + elseif type(lval) ~= "table" then + lval = { lval } + end + + lval[#lval+1] = value + uci:set(conf, sect, opt, lval) +end m = Map("https_dns_proxy", translate("HTTPS DNS Proxy Settings")) m.template="cbi/map" @@ -9,10 +46,22 @@ s3.sortable = false s3.anonymous = true s3.addremove = true +local n = 0 +uci:foreach("https_dns_proxy", "https_dns_proxy", function(s) + if s[".name"] == section then + return false + end + n = n + 1 +end) + prov = s3:option(ListValue, "url_prefix", translate("Provider")) prov:value("https://cloudflare-dns.com/dns-query?ct=application/dns-json&","Cloudflare") prov:value("https://dns.google.com/resolve?","Google") prov.write = function(self, section, value) + local la_val = la:formvalue(section) + local lp_val = lp:formvalue(section) + if not la_val then la_val = "127.0.0.1" end + if not lp_val then lp_val = n + 5053 end if value and value:match("cloudflare") then uci:set("https_dns_proxy", section, "bootstrap_dns", "1.1.1.1,1.0.0.1") uci:set("https_dns_proxy", section, "url_prefix", "https://cloudflare-dns.com/dns-query?ct=application/dns-json&") @@ -23,6 +72,12 @@ prov.write = function(self, section, value) uci:set("https_dns_proxy", section, "user", "nobody") uci:set("https_dns_proxy", section, "group", "nogroup") uci:save("https_dns_proxy") + if n == 0 then + uci:delete("dhcp", "@dnsmasq[0]", "server") + end + uci_del_list("dhcp", "@dnsmasq[0]", "server", tostring(la_val) .. ":" .. tostring(lp_val)) + uci_add_list("dhcp", "@dnsmasq[0]", "server", tostring(la_val) .. ":" .. tostring(lp_val)) + uci:save("dhcp") end la = s3:option(Value, "listen_addr", translate("Listen address")) @@ -31,23 +86,22 @@ la.rmempty = true lp = s3:option(Value, "listen_port", translate("Listen port")) lp.datatype = "port" -lp.placeholder = "5053" -lp.rmempty = true - --- user = s3:option(Value, "user", translate("User name")) --- user.placeholder = "nobody" --- user.rmempty = true - --- group = s3:option(Value, "group", translate("Group name")) --- group.placeholder = "nogroup" --- group.rmempty = true +lp.value = n + 5053 +lp.write = function(self, section, value) + if not value then + uci:set("https_dns_proxy", section, "listen_port", n + 5053) + else + uci:set("https_dns_proxy", section, "listen_port", value) + end + uci:save("https_dns_proxy") +end sa = s3:option(Value, "subnet_addr", translate("Subnet address")) -sa.datatype = "ip4addr" +sa.datatype = "ip4prefix" sa.rmempty = true ps = s3:option(Value, "proxy_server", translate("Proxy server")) --- ps.datatype = "or(ipaddr,hostname)" +ps.datatype = "or(ipaddr,hostname)" ps.rmempty = true return m diff --git a/applications/luci-app-ltqtapi/po/es/ltqtapi.po b/applications/luci-app-ltqtapi/po/es/ltqtapi.po new file mode 100644 index 000000000..3c844127e --- /dev/null +++ b/applications/luci-app-ltqtapi/po/es/ltqtapi.po @@ -0,0 +1,92 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Project-Id-Version: \n" +"POT-Creation-Date: \n" +"PO-Revision-Date: 2019-07-25 18:05-0300\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 2.2.1\n" +"Last-Translator: Franco Castillo <castillofrancodamian@gmail.com>\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"Language: es\n" + +#: applications/luci-app-ltqtapi/luasrc/controller/ltqtapi.lua:16 +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/account.lua:7 +msgid "Account" +msgstr "Cuenta" + +#: applications/luci-app-ltqtapi/luasrc/view/telephony_status.htm:28 +msgid "Collecting data..." +msgstr "Recolectando datos..." + +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/contact.lua:7 +msgid "Contact" +msgstr "Contacto" + +#: applications/luci-app-ltqtapi/luasrc/controller/ltqtapi.lua:17 +msgid "Contacts" +msgstr "Contactos" + +#: applications/luci-app-ltqtapi/luasrc/view/telephony_status.htm:20 +msgid "Current Telephony State" +msgstr "Estado de telefonía actual" + +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/contact.lua:14 +msgid "Dial" +msgstr "Dial" + +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/account.lua:14 +msgid "Disabled" +msgstr "Deshabilitado" + +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/account.lua:7 +msgid "Here You can specify the SIP account that you want to use." +msgstr "Aquí puede especificar la cuenta SIP que desea utilizar." + +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/contact.lua:7 +msgid "Here You can specify the SIP contacts that you want to use." +msgstr "Aquí puede especificar los contactos SIP que desea utilizar." + +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/contact.lua:12 +msgid "Name" +msgstr "Nombre" + +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/account.lua:13 +msgid "Password" +msgstr "Contraseña" + +#: applications/luci-app-ltqtapi/luasrc/view/telephony_status.htm:24 +msgid "Port1" +msgstr "Puerto1" + +#: applications/luci-app-ltqtapi/luasrc/view/telephony_status.htm:25 +msgid "Port2" +msgstr "Puerto2" + +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/account.lua:11 +msgid "Realm" +msgstr "Reino" + +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/contact.lua:13 +msgid "Shortdial" +msgstr "Dial corto" + +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/contact.lua:16 +msgid "Type" +msgstr "Tipo" + +#: applications/luci-app-ltqtapi/luasrc/view/telephony_status.htm:23 +msgid "Uplink" +msgstr "Enlace ascendente" + +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/account.lua:12 +msgid "Username" +msgstr "Nombre de usuario" + +#: applications/luci-app-ltqtapi/luasrc/controller/ltqtapi.lua:13 +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/account.lua:4 +#: applications/luci-app-ltqtapi/luasrc/model/cbi/luci_ltqtapi/contact.lua:4 +msgid "VoIP" +msgstr "VoIP" diff --git a/applications/luci-app-nut/po/es/nut.po b/applications/luci-app-nut/po/es/nut.po new file mode 100644 index 000000000..615da00ca --- /dev/null +++ b/applications/luci-app-nut/po/es/nut.po @@ -0,0 +1,619 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Project-Id-Version: \n" +"POT-Creation-Date: \n" +"PO-Revision-Date: 2019-07-25 18:52-0300\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 2.2.1\n" +"Last-Translator: Franco Castillo <castillofrancodamian@gmail.com>\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"Language: es\n" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:216 +msgid "Additional Shutdown Time(s)" +msgstr "Tiempo adicional de apagado (s)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:37 +msgid "Addresses on which to listen" +msgstr "Direcciones donde escuchar." + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:23 +msgid "Allowed actions" +msgstr "Acciones permitidas" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_cgi.lua:20 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:188 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:217 +msgid "As configured by NUT" +msgstr "Según lo configurado por NUT" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:150 +msgid "Bytes to read from interrupt pipe" +msgstr "Bytes para leer desde tubo de interrupción." + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:174 +msgid "CA Certificate path" +msgstr "Ruta del certificado de CA" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:73 +msgid "Certificate file (SSL)" +msgstr "Archivo de certificado (SSL)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:63 +msgid "Communications lost message" +msgstr "Comunicaciones por mensaje perdidas" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:60 +msgid "Communications restored message" +msgstr "Comunicaciones pro mensaje restauradas" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_cgi.lua:35 +msgid "Control UPS via CGI" +msgstr "Control de UPS a través de CGI" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:43 +msgid "Deadtime" +msgstr "Tiempo muerto" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:87 +msgid "Default for UPSes without this field." +msgstr "Predeterminado para UPS sin este campo." + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:177 +msgid "Delay for kill power command" +msgstr "Retraso para el comando kill power" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:181 +msgid "Delay to power on UPS if power returns after kill power" +msgstr "" +"Retraso para encender el UPS si la energía regresa después de apagar la " +"unidad" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:129 +msgid "Description (Display)" +msgstr "Descripción (Display)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_cgi.lua:32 +msgid "Display name" +msgstr "Nombre para mostrar" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:169 +msgid "Don't lock port when starting driver" +msgstr "No bloquee el puerto al iniciar el controlador" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:132 +msgid "Driver" +msgstr "Controlador" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:114 +msgid "Driver Configuration" +msgstr "Configuración del controlador" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:77 +msgid "Driver Global Settings" +msgstr "Configuración global del controlador" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:83 +msgid "Driver Path" +msgstr "Ruta del controlador" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:212 +msgid "Driver Shutdown Order" +msgstr "Orden de apagado del controlador" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:106 +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:244 +msgid "Driver waits for data to be consumed by upsd before publishing more." +msgstr "" +"El controlador espera que los datos sean consumidos por upsd antes de " +"publicar más." + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:59 +msgid "Drop privileges to this user" +msgstr "Soltar privilegios a este usuario" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_cgi.lua:40 +msgid "Enable" +msgstr "Habilitar" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:138 +msgid "" +"Enables a hotplug script that makes all ttyUSB devices (e.g. serial USB) " +"group read-write as user 'nut'" +msgstr "" +"Habilita una secuencia de comandos de conexión en caliente que hace que " +"todos los dispositivos ttyUSB (por ejemplo, USB serie) sean de lectura y " +"escritura como usuario 'nut'" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:93 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:102 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:110 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:118 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:126 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:134 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:142 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:150 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:158 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:166 +msgid "Execute notify command" +msgstr "Ejecutar comando de notificación" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:26 +msgid "Forced Shutdown" +msgstr "Forzar apagado" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:57 +msgid "Forced shutdown message" +msgstr "Forzar mensaje de apagado" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:10 +msgid "Global Settings" +msgstr "Configuración global" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_cgi.lua:13 +msgid "Go to NUT CGI" +msgstr "Ir a CGI de NUT" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_cgi.lua:16 +msgid "Host" +msgstr "Host" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_cgi.lua:23 +msgid "Hostname or IP address" +msgstr "Nombre de host o dirección IP" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:191 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:220 +msgid "Hostname or address of UPS" +msgstr "Nombre de host o dirección de UPS" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:39 +msgid "Hot Sync" +msgstr "Sincronización caliente" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:41 +msgid "IP Address" +msgstr "Dirección IP" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:95 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:104 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:112 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:120 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:128 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:136 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:144 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:152 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:160 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:168 +msgid "Ignore" +msgstr "Ignorar" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:142 +msgid "Ignore Low Battery" +msgstr "Ignorar batería baja" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:29 +msgid "Instant commands" +msgstr "Comandos instantáneos" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:146 +msgid "Interrupt Only" +msgstr "Sólo Interrumpir" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:150 +msgid "Interrupt Size" +msgstr "Tamaño de la interrupción" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:54 +msgid "Low battery message" +msgstr "Mensaje de batería baja" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:163 +msgid "Manufacturer (Display)" +msgstr "Fabricante (Display)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:34 +msgid "Master" +msgstr "Maestro" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:154 +msgid "Max USB HID Length Reported" +msgstr "Longitud máxima de USB HID informada" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:54 +msgid "Maximum Age of Data" +msgstr "Edad máxima de los datos" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:87 +msgid "Maximum Start Delay" +msgstr "Retardo de arranque máximo" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:67 +msgid "Maximum connections" +msgstr "Conexiones máximas" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:91 +msgid "Maximum number of times to try starting a driver." +msgstr "Número máximo de veces para intentar iniciar un controlador." + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:101 +msgid "Maximum time in seconds between refresh of UPS status" +msgstr "Tiempo máximo en segundos para la actualización del estado de UPS" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:91 +msgid "Maxium Retries" +msgstr "Reintentos máximos" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:158 +msgid "Maxium Start Delay" +msgstr "Retardo de arranque máximo" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:17 +msgid "Minimum required number or power supplies" +msgstr "Número mínimo requerido o fuentes de alimentación" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:166 +msgid "Model (Display)" +msgstr "Modelo (Display)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_cgi.lua:9 +msgid "NUT CGI Access" +msgstr "Acceso CGI de NUT" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:12 +msgid "NUT Users" +msgstr "Usuarios de NUT" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:188 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:217 +msgid "Name of UPS" +msgstr "Nombre de UPS" + +#: applications/luci-app-nut/luasrc/controller/nut.lua:11 +msgid "Network UPS Tools" +msgstr "Herramientas de red de UPS" + +#: applications/luci-app-nut/luasrc/controller/nut.lua:22 +#: applications/luci-app-nut/luasrc/model/cbi/nut_cgi.lua:6 +msgid "Network UPS Tools (CGI)" +msgstr "Herramientas UPS de red (CGI)" + +#: applications/luci-app-nut/luasrc/controller/nut.lua:18 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:7 +msgid "Network UPS Tools (Monitor)" +msgstr "Herramientas de red de UPS (Monitor)" + +#: applications/luci-app-nut/luasrc/controller/nut.lua:14 +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:9 +msgid "Network UPS Tools (Server)" +msgstr "Herramientas de red de UPS (servidor)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_cgi.lua:7 +msgid "Network UPS Tools CGI Configuration" +msgstr "Configuración de CGI de herramientas de UPS de red" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:8 +msgid "Network UPS Tools Monitoring Configuration" +msgstr "Configuración de monitoreo de herramientas UPS de red" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:10 +msgid "Network UPS Tools Server Configuration" +msgstr "Configuración del servidor de herramientas de red de UPS" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:169 +msgid "No Lock" +msgstr "Sin bloqueo" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:72 +msgid "No communications message" +msgstr "No hay mensaje de comunicación" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:173 +msgid "No low/high voltage transfer OIDs" +msgstr "Sin OID de transferencia de baja/alta tensión" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:75 +msgid "No parent message" +msgstr "No hay mensaje para los padres" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:90 +msgid "Notification defaults" +msgstr "Notificación predeterminada" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:26 +msgid "Notify command" +msgstr "Notificar comando" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:99 +msgid "Notify when back online" +msgstr "Notificar cuando vuelva a estar en línea" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:163 +msgid "Notify when battery needs replacing" +msgstr "Notificar cuando la batería necesita ser reemplazada" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:147 +msgid "Notify when communications lost" +msgstr "Notificar cuando se pierden las comunicaciones." + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:139 +msgid "Notify when communications restored" +msgstr "Notificar cuando se restauren las comunicaciones." + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:131 +msgid "Notify when force shutdown" +msgstr "Notificar cuando se fuerce el apagao" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:115 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:123 +msgid "Notify when low battery" +msgstr "Notificar cuando la batería está baja" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:107 +msgid "Notify when on battery" +msgstr "Notificar cuando está en la batería" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:155 +msgid "Notify when shutting down" +msgstr "Notificar cuando se apaga" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:177 +msgid "Off Delay(s)" +msgstr "Retardo de apagado (s)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:181 +msgid "On Delay(s)" +msgstr "Retardo de encendido (s)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:51 +msgid "On battery message" +msgstr "En el mensaje de la batería" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:48 +msgid "Online message" +msgstr "Mensaje en linea" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:208 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:237 +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:19 +msgid "Password" +msgstr "Contraseña" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:174 +msgid "Path containing ca certificates to match against host certificate" +msgstr "" +"Ruta que contiene certificados de CA para coincidir con el certificado del " +"host" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:83 +msgid "Path to drivers (instead of default)" +msgstr "Ruta a los controladores (en lugar de predeterminado)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:63 +msgid "Path to state file" +msgstr "Ruta al archivo de estado" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:54 +msgid "Period after which data is considered stale" +msgstr "Período después del cual los datos se consideran obsoletos." + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:101 +msgid "Poll Interval" +msgstr "Intervalo de encuesta" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:29 +msgid "Poll frequency" +msgstr "Frecuencia de encuesta" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:34 +msgid "Poll frequency alert" +msgstr "Alerta de frecuencia de sondeo" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:197 +msgid "Polling Frequency(s)" +msgstr "Frecuencia de sondeo(s)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_cgi.lua:27 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:195 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:224 +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:46 +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:202 +msgid "Port" +msgstr "Puerto" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:200 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:229 +msgid "Power value" +msgstr "Valor de potencia" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:206 +msgid "Product (regex)" +msgstr "Producto (regex)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:69 +msgid "Replace battery message" +msgstr "Reemplace el mensaje de la batería" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:178 +msgid "Require SSL and make sure server CN matches hostname" +msgstr "" +"Requiere SSL y asegúrese de que el servidor CN coincida con el nombre de " +"host" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:96 +msgid "Retry Delay" +msgstr "Retraso de reintento" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:32 +msgid "Role" +msgstr "Rol" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:80 +msgid "Run drivers in a chroot(2) environment" +msgstr "Ejecutar controladores en un entorno chroot(2)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:14 +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:59 +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:110 +msgid "RunAs User" +msgstr "Ejecutar como usuario" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:125 +msgid "SNMP Community" +msgstr "Comunidad SNMP" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:222 +msgid "SNMP retries" +msgstr "Reintentos SNMP" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:226 +msgid "SNMP timeout(s)" +msgstr "Tiempo de espera de SNMP" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:230 +msgid "SNMP version" +msgstr "Versión SNMP" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:232 +msgid "SNMPv1" +msgstr "SNMPv1" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:233 +msgid "SNMPv2c" +msgstr "SNMPv2c" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:234 +msgid "SNMPv3" +msgstr "SNMPv3" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:219 +msgid "Serial Number" +msgstr "Número de serie" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:138 +msgid "Set USB serial port permissions" +msgstr "Establecer permisos de puerto serie USB" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:25 +msgid "Set variables" +msgstr "Establecer variables" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:22 +msgid "Shutdown command" +msgstr "Comando de apagado" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:66 +msgid "Shutdown message" +msgstr "Mensaje de apagado" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:33 +msgid "Slave" +msgstr "Esclavo" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:106 +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:244 +msgid "Synchronous Communication" +msgstr "Comunicación sincrónica" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:115 +msgid "The name of this section will be used as UPS name elsewhere" +msgstr "El nombre de esta sección se usará como nombre de UPS en otra parte" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:96 +msgid "Time in seconds between driver start retry attempts." +msgstr "" +"Tiempo en segundos entre los intentos de reintento de inicio del " +"controlador." + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:158 +msgid "Time in seconds that upsdrvctl will wait for driver to finish starting" +msgstr "" +"Tiempo en segundos que upsdrvctl esperará a que el controlador termine de " +"iniciarse" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:183 +msgid "UPS Master" +msgstr "UPS Maestro" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:51 +msgid "UPS Server Global Settings" +msgstr "Configuración global del servidor UPS" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:212 +msgid "UPS Slave" +msgstr "UPS esclavo" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_cgi.lua:20 +msgid "UPS name" +msgstr "Nombre de UPS" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:121 +msgid "USB Bus(es) (regex)" +msgstr "Bus(es) USB (regex)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:209 +msgid "USB Product Id" +msgstr "ID de producto USB" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:241 +msgid "USB Vendor Id" +msgstr "ID de proveedor USB" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:29 +msgid "" +"Use upscmd -l to see full list which the commands your UPS supports " +"(requires upscmd package)" +msgstr "" +"Use upscmd -l para ver la lista completa de los comandos que soporta su UPS " +"(requiere el paquete upscmd)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:110 +msgid "" +"User as which to execute driver; requires device file accessed by driver to " +"be read-write for that user." +msgstr "" +"Usuario como para ejecutar el controlador; requiere que el archivo de " +"dispositivo accedido por el controlador sea de lectura y escritura para ese " +"usuario." + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:205 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:234 +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:16 +msgid "Username" +msgstr "Nombre de usuario" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:238 +msgid "Vendor (regex)" +msgstr "Proveedor (regex)" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:178 +msgid "Verify all connection with SSL" +msgstr "Verificar toda la conexión con SSL" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:154 +msgid "Workaround for buggy firmware" +msgstr "Solución para el firmware de buggy" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:94 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:103 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:111 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:119 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:127 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:135 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:143 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:151 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:159 +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:167 +msgid "Write to syslog" +msgstr "Escribir en syslog" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_server.lua:80 +msgid "chroot" +msgstr "chroot" + +#: applications/luci-app-nut/luasrc/model/cbi/nut_monitor.lua:14 +msgid "upsmon drops privileges to this user" +msgstr "upsmon le quita privilegios a este usuario" diff --git a/applications/luci-app-privoxy/po/es/privoxy.po b/applications/luci-app-privoxy/po/es/privoxy.po new file mode 100644 index 000000000..853d23d7b --- /dev/null +++ b/applications/luci-app-privoxy/po/es/privoxy.po @@ -0,0 +1,683 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Project-Id-Version: \n" +"POT-Creation-Date: \n" +"PO-Revision-Date: 2019-07-25 17:45-0300\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 2.2.1\n" +"Last-Translator: Franco Castillo <castillofrancodamian@gmail.com>\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"Language: es\n" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:236 +msgid "" +"A URL to be displayed in the error page that users will see if access to an " +"untrusted page is denied." +msgstr "" +"Una URL que se mostrará en la página de error que los usuarios verán si se " +"deniega el acceso a una página que no es de confianza." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:226 +msgid "" +"A URL to documentation about the local Privoxy setup, configuration or " +"policies." +msgstr "" +"Una URL para la documentación sobre la configuración, configuración o " +"políticas locales de Privoxy." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:325 +msgid "A directory where Privoxy can create temporary files." +msgstr "Un directorio donde Privoxy puede crear archivos temporales." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:84 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:87 +msgid "Access Control" +msgstr "Control de acceso" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:337 +msgid "Actions that are applied to all sites and maybe overruled later on." +msgstr "" +"Las acciones que se aplican a todos los sitios y tal vez se anulan más " +"adelante." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:308 +msgid "An alternative directory where the templates are loaded from." +msgstr "Un directorio alternativo desde donde se cargan las plantillas." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:206 +msgid "An email address to reach the Privoxy administrator." +msgstr "" +"Una dirección de correo electrónico para llegar al administrador de Privoxy." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:691 +msgid "" +"Assumed server-side keep-alive timeout (in seconds) if not specified by the " +"server." +msgstr "" +"Supuesto tiempo de espera de mantenimiento del lado del servidor (en " +"segundos) si no está especificado por el servidor." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:151 +msgid "Boot delay" +msgstr "Retraso de arranque" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:869 +msgid "CGI user interface" +msgstr "Interfaz de usuario CGI" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:857 +msgid "Common Log Format" +msgstr "Formato de registro común" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:92 +msgid "" +"Configure here the routing of HTTP requests through a chain of multiple " +"proxies. Note that parent proxies can severely decrease your privacy level. " +"Also specified here are SOCKS proxies." +msgstr "" +"Configure aquí el enrutamiento de solicitudes HTTP a través de una cadena de " +"múltiples proxies. Tenga en cuenta que los proxies de los padres pueden " +"disminuir considerablemente su nivel de privacidad. También se especifican " +"aquí los proxies SOCKS." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:851 +msgid "Debug GIF de-animation" +msgstr "Depurar GIF desaminación" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:833 +msgid "Debug force feature" +msgstr "Depurar característica de fuerza" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:845 +msgid "Debug redirects" +msgstr "Depurar redirecciones" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:839 +msgid "Debug regular expression filters" +msgstr "Depurar filtros de expresiones regulares" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:152 +msgid "Delay (in seconds) during system boot before Privoxy start" +msgstr "" +"Retraso (en segundos) durante el inicio del sistema antes del inicio de " +"Privoxy" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:261 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:298 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:315 +msgid "Directory does not exist!" +msgstr "¡El directorio no existe!" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:557 +msgid "Disabled == Transparent Proxy Mode" +msgstr "Deshabilitado == Modo Proxy Transparente" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:66 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:71 +msgid "Documentation" +msgstr "Documentación" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:154 +msgid "During delay ifup-events are not monitored !" +msgstr "Durante la demora, los eventos no son monitoreados!" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:599 +msgid "Enable proxy authentication forwarding" +msgstr "Habilitar el reenvío de autenticación proxy" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:135 +msgid "" +"Enable/Disable autostart of Privoxy on system startup and interface events" +msgstr "" +"Habilitar/Deshabilitar el inicio automático de Privoxy en el inicio del " +"sistema y los eventos de interfaz" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:555 +msgid "Enable/Disable filtering when Privoxy starts." +msgstr "Habilitar/Deshabilitar el filtrado cuando se inicia Privoxy." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:134 +msgid "Enabled" +msgstr "Habilitado" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:602 +msgid "" +"Enabling this option is NOT recommended if there is no parent proxy that " +"requires authentication!" +msgstr "" +"Habilitar esta opción NO se recomienda si no hay un proxy principal que " +"requiera autenticación." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:368 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:404 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:442 +msgid "File '%s' not found inside Configuration Directory" +msgstr "El archivo '%s' no se encuentra dentro del directorio de configuración" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:915 +#: applications/luci-app-privoxy/luasrc/view/privoxy/detail_logview.htm:12 +msgid "File not found or empty" +msgstr "Archivo no encontrado o vacío" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:75 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:80 +msgid "Files and Directories" +msgstr "Archivos y directorios" + +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:36 +msgid "For help use link at the relevant option" +msgstr "Para obtener ayuda, utilice el enlace en la opción correspondiente" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:91 +msgid "Forwarding" +msgstr "Reenvíos" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:589 +msgid "" +"If enabled, Privoxy hides the 'go there anyway' link. The user obviously " +"should not be able to bypass any blocks." +msgstr "" +"Si está habilitado, Privoxy oculta el enlace 'ir allí de todos modos'. El " +"usuario, obviamente, no debe ser capaz de eludir ningún bloque." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:67 +msgid "" +"If you intend to operate Privoxy for more users than just yourself, it might " +"be a good idea to let them know how to reach you, what you block and why you " +"do that, your policies, etc." +msgstr "" +"Si tiene la intención de operar Privoxy para más usuarios que solo usted, " +"puede ser una buena idea dejarles saber cómo comunicarse con usted, qué " +"bloquea y por qué lo hace, sus políticas, etc." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:215 +msgid "Invalid email address" +msgstr "Dirección de correo electrónico inváida" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:416 +msgid "It is NOT recommended for the casual user." +msgstr "NO se recomienda para el usuario ocasional." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:194 +msgid "Location of the Privoxy User Manual." +msgstr "Ubicación del manual de usuario de Privoxy." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:108 +msgid "Log File Viewer" +msgstr "Visor de archivos de registro" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:895 +msgid "Log all data read from the network" +msgstr "Registrar todos los datos leídos desde la red" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:827 +msgid "Log all data written to the network" +msgstr "Registrar todos los datos escritos en la red" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:901 +msgid "Log the applying actions" +msgstr "Registrar las acciones de aplicación." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:803 +msgid "" +"Log the destination for each request Privoxy let through. See also 'Debug " +"1024'." +msgstr "" +"Registrar el destino para cada solicitud que Privoxy dejó pasar. Véase " +"también 'Debug 1024'." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:863 +msgid "" +"Log the destination for requests Privoxy didn't let through, and the reason " +"why." +msgstr "" +"Registrar el destino para las solicitudes que Privoxy no dejó pasar y la " +"razón." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:104 +msgid "Logging" +msgstr "Iniciar sesión" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:339 +msgid "Main actions file" +msgstr "Archivo de acciones principales" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:461 +msgid "Mandatory Input: No Data given!" +msgstr "Entrada obligatoria: ¡No se han dado datos!" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:259 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:296 +msgid "Mandatory Input: No Directory given!" +msgstr "Entrada obligatoria: ¡No hay directorio dado!" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:279 +msgid "Mandatory Input: No File given!" +msgstr "Entrada obligatoria: ¡No hay archivo dado!" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:479 +msgid "Mandatory Input: No Port given!" +msgstr "Entrada obligatoria: ¡No hay puerto dado!" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:345 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:381 +msgid "Mandatory Input: No files given!" +msgstr "Entrada obligatoria: ¡No hay archivos dados!" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:482 +msgid "Mandatory Input: No valid IPv4 address or host given!" +msgstr "" +"Entrada obligatoria: ¡No se ha proporcionado una dirección IPv4 válida o un " +"host!" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:470 +msgid "Mandatory Input: No valid IPv6 address given!" +msgstr "" +"Entrada obligatoria: ¡No se ha proporcionado una dirección IPv6 válida!" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:472 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:484 +msgid "Mandatory Input: No valid Port given!" +msgstr "Entrada obligatoria: ¡No se ha dado un puerto válido!" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:733 +msgid "Maximum number of client connections that will be served." +msgstr "Número máximo de conexiones de clientes que se atenderán." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:535 +msgid "Maximum size (in KB) of the buffer for content filtering." +msgstr "Tamaño máximo (en KB) del búfer para el filtrado de contenido." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:97 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:100 +msgid "Miscellaneous" +msgstr "Varios" + +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:51 +msgid "NOT installed" +msgstr "No instalado" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:254 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:291 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:310 +msgid "No trailing '/', please." +msgstr "No hay '/' al final, por favor." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:881 +msgid "Non-fatal errors - *we highly recommended enabling this*" +msgstr "Errores no fatales - *recomendamos encarecidamente habilitar esto*" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:714 +msgid "" +"Number of seconds after which a socket times out if no data is received." +msgstr "" +"Número de segundos después de los cuales se agota un socket si no se reciben " +"datos." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:668 +msgid "" +"Number of seconds after which an open connection will no longer be reused." +msgstr "" +"Número de segundos después de los cuales una conexión abierta ya no se " +"volverá a utilizar." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:327 +msgid "" +"Only when using 'external filters', Privoxy has to create temporary files." +msgstr "" +"Solo cuando se usan 'filtros externos', Privoxy tiene que crear archivos " +"temporales." + +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:81 +msgid "Please install current version !" +msgstr "Por favor, instale la versión actual!" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:913 +msgid "Please press [Read] button" +msgstr "Por favor presione el botón [Leer]" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:518 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:527 +msgid "Please read Privoxy manual for details!" +msgstr "Por favor, lea el manual de Privoxy para más detalles!" + +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:92 +msgid "Please update to the current version!" +msgstr "Por favor, actualice a la versión actual!" + +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:24 +msgid "Privoxy WEB proxy" +msgstr "Privoxy WEB proxy" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:76 +msgid "" +"Privoxy can (and normally does) use a number of other files for additional " +"configuration, help and logging. This section of the configuration file " +"tells Privoxy where to find those other files." +msgstr "" +"Privoxy puede (y normalmente lo hace) usar una cantidad de otros archivos " +"para configuración adicional, ayuda y registro. Esta sección del archivo de " +"configuración le dice a Privoxy dónde encontrar esos otros archivos." + +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:32 +msgid "" +"Privoxy is a non-caching web proxy with advanced filtering capabilities for " +"enhancing privacy, modifying web page data and HTTP headers, controlling " +"access, and removing ads and other obnoxious Internet junk." +msgstr "" +"Privoxy es un proxy web sin almacenamiento en caché con funciones avanzadas " +"de filtrado para mejorar la privacidad, modificar los datos de las páginas " +"web y los encabezados HTTP, controlar el acceso y eliminar anuncios y otros " +"datos basura desagradables de Internet." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:908 +msgid "Read / Reread log file" +msgstr "Leer / releer el archivo de registro" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:815 +msgid "Show I/O status" +msgstr "Mostrar estado de E/S" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:809 +msgid "Show each connection status" +msgstr "Mostrar el estado de cada conexión" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:821 +msgid "Show header parsing" +msgstr "Mostrar encabezado analizando" + +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:76 +msgid "Software package '%s' is not installed." +msgstr "El paquete de software '%s' no está instalado." + +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:85 +msgid "Software package '%s' is outdated." +msgstr "El paquete de software '%s' está desactualizado." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:125 +#: applications/luci-app-privoxy/luasrc/view/privoxy/detail_startstop.htm:10 +msgid "Start" +msgstr "Iniciar" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:115 +msgid "Start / Stop" +msgstr "Iniciar/Detener" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:116 +msgid "Start/Stop Privoxy WEB Proxy" +msgstr "Iniciar/Detener Privoxy WEB Proxy" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:875 +msgid "Startup banner and warnings." +msgstr "Banner de inicio y advertencias." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:455 +msgid "Syntax:" +msgstr "Sintaxis:" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:786 +msgid "Syntax: Client header names delimited by spaces." +msgstr "Sintaxis: Nombres de encabezado de cliente delimitados por espacios." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:612 +msgid "Syntax: target_pattern http_parent[:port]" +msgstr "Sintaxis: target_pattern http_parent[:port]" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:620 +msgid "Syntax: target_pattern socks_proxy[:port] http_parent[:port]" +msgstr "Sintaxis: target_pattern socks_proxy[:port] http_parent[:port]" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:59 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:62 +msgid "System" +msgstr "Sistema" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:335 +msgid "" +"The actions file(s) to use. Multiple actionsfile lines are permitted, and " +"are in fact recommended!" +msgstr "" +"Los archivos de acciones a usar. Se permiten varias líneas de archivo de " +"acciones, ¡y de hecho se recomiendan!" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:453 +msgid "" +"The address and TCP port on which Privoxy will listen for client requests." +msgstr "" +"La dirección y el puerto TCP en el que Privoxy escuchará las solicitudes de " +"los clientes." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:766 +msgid "" +"The compression level that is passed to the zlib library when compressing " +"buffered content." +msgstr "" +"El nivel de compresión que se pasa a la biblioteca zlib al comprimir el " +"contenido almacenado." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:252 +msgid "" +"The directory where all logging takes place (i.e. where the logfile is " +"located)." +msgstr "" +"El directorio donde se lleva a cabo todo el registro (es decir, donde se " +"encuentra el archivo de registro)." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:289 +msgid "The directory where the other configuration files are located." +msgstr "El directorio donde se encuentran los otros archivos de configuración." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:377 +msgid "" +"The filter files contain content modification rules that use regular " +"expressions." +msgstr "" +"Los archivos de filtro contienen reglas de modificación de contenido que " +"utilizan expresiones regulares." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:183 +msgid "The hostname shown on the CGI pages." +msgstr "El nombre de host mostrado en las páginas CGI." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:274 +msgid "The log file to use. File name, relative to log directory." +msgstr "" +"El archivo de registro a utilizar. Nombre del archivo, relativo al " +"directorio de registro." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:784 +msgid "The order in which client headers are sorted before forwarding them." +msgstr "" +"El orden en que se clasifican los encabezados de los clientes antes de " +"reenviarlos." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:751 +msgid "" +"The status code Privoxy returns for pages blocked with +handle-as-empty-" +"document." +msgstr "" +"El código de estado que Privoxy devuelve para las páginas bloqueadas con " +"+handle-as-empty-document." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:413 +msgid "" +"The trust mechanism is an experimental feature for building white-lists and " +"should be used with care." +msgstr "" +"El mecanismo de confianza es una característica experimental para construir " +"listas blancas y debe usarse con cuidado." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:238 +msgid "" +"The value of this option only matters if the experimental trust mechanism " +"has been activated." +msgstr "" +"El valor de esta opción solo importa si se ha activado el mecanismo de " +"confianza experimental." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:796 +msgid "" +"This option is only there for debugging purposes. It will drastically reduce " +"performance." +msgstr "" +"Esta opción solo está ahí para fines de depuración. Reducirá drásticamente " +"el rendimiento." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:574 +msgid "" +"This option will be removed in future releases as it has been obsoleted by " +"the more general header taggers." +msgstr "" +"Esta opción se eliminará en futuras versiones, ya que ha sido obsoleta por " +"los etiquetadores de encabezado más generales." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:85 +msgid "" +"This tab controls the security-relevant aspects of Privoxy's configuration." +msgstr "" +"Esta pestaña controla los aspectos relevantes para la seguridad de la " +"configuración de Privoxy." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:618 +msgid "" +"Through which SOCKS proxy (and optionally to which parent HTTP proxy) " +"specific requests should be routed." +msgstr "" +"A través de qué proxy SOCKS (y, opcionalmente, a qué proxy HTTP principal) " +"se deben enrutar las solicitudes específicas." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:610 +msgid "To which parent HTTP proxy specific requests should be routed." +msgstr "" +"A qué enrutamiento deben dirigirse las solicitudes específicas del proxy " +"HTTP." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:341 +msgid "User customizations" +msgstr "Personalizaciones de usuario" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:166 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:543 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:673 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:696 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:720 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:739 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:772 +msgid "Value is not a number" +msgstr "El valor no es un número" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:168 +msgid "Value not between 0 and 300" +msgstr "Valor no entre 0 y 300" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:774 +msgid "Value not between 0 and 9" +msgstr "Valor no entre 0 y 9" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:545 +msgid "Value not between 1 and 4096" +msgstr "Valor no entre 1 y 4096" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:675 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:698 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:722 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:741 +msgid "Value not greater 0 or empty" +msgstr "Valor no mayor a 0 o vacío" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:537 +msgid "Value range 1 to 4096, no entry defaults to 4096" +msgstr "Rango de valores de 1 a 4096, sin entrada por defecto a 4096" + +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:45 +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:47 +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:50 +msgid "Version" +msgstr "Versión" + +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:43 +msgid "Version Information" +msgstr "Información de versión" + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:646 +msgid "Whether intercepted requests should be treated as valid." +msgstr "Si las solicitudes interceptadas deben tratarse como válidas." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:572 +msgid "" +"Whether or not Privoxy recognizes special HTTP headers to change toggle " +"state." +msgstr "" +"Si Privoxy reconoce o no encabezados HTTP especiales para cambiar el estado " +"de conmutación." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:758 +msgid "Whether or not buffered content is compressed before delivery." +msgstr "" +"Si el contenido almacenado en búfer se comprime o no antes de la entrega." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:706 +msgid "" +"Whether or not outgoing connections that have been kept alive should be " +"shared between different incoming connections." +msgstr "" +"Si las conexiones salientes que se han mantenido vivas deben compartirse " +"entre diferentes conexiones entrantes." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:683 +msgid "Whether or not pipelined requests should be served." +msgstr "Si las solicitudes canalizadas deben ser atendidas o no." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:600 +msgid "Whether or not proxy authentication through Privoxy should work." +msgstr "Si la autenticación proxy a través de Privoxy debería o no funcionar." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:582 +msgid "Whether or not the web-based actions file editor may be used." +msgstr "" +"Si se puede usar o no el editor de archivos de acciones basadas en web." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:565 +msgid "Whether or not the web-based toggle feature may be used." +msgstr "Si se puede usar o no la función de conmutación basada en la web." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:653 +msgid "Whether requests to Privoxy's CGI pages can be blocked or redirected." +msgstr "" +"Si las solicitudes a las páginas CGI de Privoxy se pueden bloquear o " +"redirigir." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:660 +msgid "" +"Whether the CGI interface should stay compatible with broken HTTP clients." +msgstr "" +"Si la interfaz CGI debe permanecer compatible con los clientes HTTP rotos." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:794 +msgid "Whether to run only one server thread." +msgstr "Ya sea para ejecutar un solo hilo del servidor." + +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:516 +#: applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua:525 +msgid "Who can access what." +msgstr "Quién puede acceder a qué." + +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:49 +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:87 +msgid "installed" +msgstr "instalado" + +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:48 +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:78 +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:89 +msgid "or higher" +msgstr "o más alto" + +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:46 +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:78 +#: applications/luci-app-privoxy/luasrc/controller/privoxy.lua:89 +msgid "required" +msgstr "requerido" diff --git a/libs/luci-lib-nixio/src/address.c b/libs/luci-lib-nixio/src/address.c index 8ab4fa89c..ed3a4a1c6 100644 --- a/libs/luci-lib-nixio/src/address.c +++ b/libs/luci-lib-nixio/src/address.c @@ -24,6 +24,7 @@ #ifdef __linux__ +#include <sys/time.h> #include <signal.h> #include <setjmp.h> #include <unistd.h> @@ -287,6 +288,7 @@ static int nixio_getnameinfo(lua_State *L) { const char *family = luaL_optstring(L, 2, NULL); #ifdef __linux__ + const struct itimerval t = { {timeout * 1000 * 1000, 0} , {0, 0} }; struct sigaction sa_new, sa_old; int timeout = luaL_optnumber(L, 3, 0); if (timeout > 0 && timeout < 1000) @@ -308,7 +310,7 @@ static int nixio_getnameinfo(lua_State *L) { return 3; } - ualarm(timeout * 1000, 0); + setitimer(ITIMER_REAL, &t, NULL); } #endif @@ -339,7 +341,7 @@ static int nixio_getnameinfo(lua_State *L) { #ifdef __linux__ if (timeout > 0 && timeout < 1000) { - ualarm(0, 0); + alarm(0); sigaction(SIGALRM, &sa_old, NULL); } #endif diff --git a/modules/luci-base/htdocs/luci-static/resources/form.js b/modules/luci-base/htdocs/luci-static/resources/form.js index 508e2c485..58d8f7100 100644 --- a/modules/luci-base/htdocs/luci-static/resources/form.js +++ b/modules/luci-base/htdocs/luci-static/resources/form.js @@ -1461,6 +1461,7 @@ var CBIListValue = CBIValue.extend({ size: this.size, sort: this.keylist, optional: this.rmempty || this.optional, + placeholder: this.placeholder, validate: L.bind(this.validate, this, section_id) }); diff --git a/modules/luci-base/htdocs/luci-static/resources/ui.js b/modules/luci-base/htdocs/luci-static/resources/ui.js index 9c16a9a0d..43afc698f 100644 --- a/modules/luci-base/htdocs/luci-static/resources/ui.js +++ b/modules/luci-base/htdocs/luci-static/resources/ui.js @@ -287,8 +287,8 @@ var UISelect = UIElement.extend({ this.node = frameEl; if (this.options.widget == 'select') { - this.setUpdateEvents(frameEl, 'change', 'click', 'blur'); - this.setChangeEvents(frameEl, 'change'); + this.setUpdateEvents(frameEl.firstChild, 'change', 'click', 'blur'); + this.setChangeEvents(frameEl.firstChild, 'change'); } else { var radioEls = frameEl.querySelectorAll('input[type="radio"]'); @@ -879,7 +879,7 @@ var UIDropdown = UIElement.extend({ else markup = '<li data-value="{{value}}">{{value}}</li>'; - new_item = E(markup.replace(/{{value}}/g, item)); + new_item = E(markup.replace(/{{value}}/g, '%h'.format(item))); if (sbox.options.multiple) { sbox.transformItem(sb, new_item); @@ -1797,7 +1797,7 @@ return L.Class.extend({ return chg[1]; case 4: - return "'" + chg[3].replace(/'/g, "'\"'\"'") + "'"; + return "'%h'".format(chg[3].replace(/'/g, "'\"'\"'")); default: return chg[m1-1]; @@ -1929,7 +1929,7 @@ return L.Class.extend({ method: 'post', timeout: L.env.apply_timeout * 1000, query: L.ui.changes.confirm_auth - }).then(call); + }).then(call, call); }, delay); }; |