diff options
Diffstat (limited to 'modules')
60 files changed, 2205 insertions, 1265 deletions
diff --git a/modules/luci-base/htdocs/luci-static/resources/cbi.js b/modules/luci-base/htdocs/luci-static/resources/cbi.js index fcfc506942..c27cc8264e 100644 --- a/modules/luci-base/htdocs/luci-static/resources/cbi.js +++ b/modules/luci-base/htdocs/luci-static/resources/cbi.js @@ -511,20 +511,19 @@ function cbi_d_update() { if (node && node.parentNode && !cbi_d_check(entry.deps)) { node.parentNode.removeChild(node); state = true; - } else if (parent && (!node || !node.parentNode) && cbi_d_check(entry.deps)) { + } + else if (parent && (!node || !node.parentNode) && cbi_d_check(entry.deps)) { var next = undefined; for (next = parent.firstChild; next; next = next.nextSibling) { - if (next.getAttribute && parseInt(next.getAttribute('data-index'), 10) > entry.index) { + if (next.getAttribute && parseInt(next.getAttribute('data-index'), 10) > entry.index) break; - } } - if (!next) { + if (!next) parent.appendChild(entry.node); - } else { + else parent.insertBefore(entry.node, next); - } state = true; } @@ -539,9 +538,8 @@ function cbi_d_update() { cbi_tag_last(parent); } - if (state) { + if (state) cbi_d_update(); - } } function cbi_init() { @@ -565,9 +563,8 @@ function cbi_init() { var index = parseInt(node.getAttribute('data-index'), 10); var depends = JSON.parse(node.getAttribute('data-depends')); if (!isNaN(index) && depends.length > 0) { - for (var alt = 0; alt < depends.length; alt++) { + for (var alt = 0; alt < depends.length; alt++) cbi_d_add(node, depends[alt], index); - } } } @@ -575,9 +572,8 @@ function cbi_init() { for (var i = 0, node; (node = nodes[i]) !== undefined; i++) { var events = node.getAttribute('data-update').split(' '); - for (var j = 0, event; (event = events[j]) !== undefined; j++) { + for (var j = 0, event; (event = events[j]) !== undefined; j++) cbi_bind(node, event, cbi_d_update); - } } nodes = document.querySelectorAll('[data-choices]'); @@ -670,13 +666,13 @@ function cbi_combobox(id, values, def, man, focus) { var sel = document.createElement("select"); sel.id = selid; sel.index = obj.index; - sel.className = obj.className.replace(/cbi-input-text/, 'cbi-input-select'); + sel.classList.remove('cbi-input-text'); + sel.classList.add('cbi-input-select'); - if (obj.nextSibling) { + if (obj.nextSibling) obj.parentNode.insertBefore(sel, obj.nextSibling); - } else { + else obj.parentNode.appendChild(sel); - } var dt = obj.getAttribute('cbi_datatype'); var op = obj.getAttribute('cbi_optional'); @@ -687,7 +683,8 @@ function cbi_combobox(id, values, def, man, focus) { optdef.value = ""; optdef.appendChild(document.createTextNode(typeof(def) === 'string' ? def : cbi_strings.label.choose)); sel.appendChild(optdef); - } else { + } + else { var opt = document.createElement("option"); opt.value = obj.value; opt.selected = "selected"; @@ -700,9 +697,8 @@ function cbi_combobox(id, values, def, man, focus) { var opt = document.createElement("option"); opt.value = i; - if (obj.value == i) { + if (obj.value == i) opt.selected = "selected"; - } opt.appendChild(document.createTextNode(values[i])); sel.appendChild(opt); @@ -724,7 +720,8 @@ function cbi_combobox(id, values, def, man, focus) { sel.blur(); sel.parentNode.removeChild(sel); obj.focus(); - } else { + } + else { obj.value = sel.options[sel.selectedIndex].value; } @@ -788,35 +785,30 @@ function cbi_dynlist_init(parent, datatype, optional, choices) { values = [ ]; - while (parent.firstChild) - { + while (parent.firstChild) { var n = parent.firstChild; var i = +n.index; - if (i != del) - { - if (n.nodeName.toLowerCase() == 'input') + if (i != del) { + if (matchesElem(n, 'input')) values.push(n.value || ''); - else if (n.nodeName.toLowerCase() == 'select') + else if (matchesElem(n, 'select')) values[values.length-1] = n.options[n.selectedIndex].value; } parent.removeChild(n); } - if (add >= 0) - { + if (add >= 0) { focus = add+1; values.splice(focus, 0, ''); } - else if (values.length == 0) - { + else if (values.length == 0) { focus = 0; values.push(''); } - for (var i = 0; i < values.length; i++) - { + for (var i = 0; i < values.length; i++) { var t = document.createElement('input'); t.id = prefix + '.' + (i+1); t.name = prefix; @@ -826,9 +818,7 @@ function cbi_dynlist_init(parent, datatype, optional, choices) t.className = 'cbi-input-text'; if (i == 0 && holder) - { t.placeholder = holder; - } var b = E('div', { class: 'cbi-button cbi-button-' + ((i+1) < values.length ? 'remove' : 'add') @@ -836,20 +826,16 @@ function cbi_dynlist_init(parent, datatype, optional, choices) parent.appendChild(t); parent.appendChild(b); + if (datatype == 'file') - { cbi_browser_init(t.id, null, parent.getAttribute('data-browser-path')); - } parent.appendChild(document.createElement('br')); if (datatype) - { cbi_validate_field(t.id, ((i+1) == values.length) || optional, datatype); - } - if (choices) - { + if (choices) { cbi_combobox_init(t.id, choices, '', cbi_strings.label.custom); b.index = i; @@ -859,17 +845,14 @@ function cbi_dynlist_init(parent, datatype, optional, choices) if (i == focus || -i == focus) b.focus(); } - else - { + else { cbi_bind(t, 'keydown', cbi_dynlist_keydown); cbi_bind(t, 'keypress', cbi_dynlist_keypress); - if (i == focus) - { + if (i == focus) { t.focus(); } - else if (-i == focus) - { + else if (-i == focus) { t.focus(); /* force cursor to end */ @@ -892,13 +875,11 @@ function cbi_dynlist_init(parent, datatype, optional, choices) if (se.nodeType == 3) se = se.parentNode; - switch (ev.keyCode) - { + switch (ev.keyCode) { /* backspace, delete */ case 8: case 46: - if (se.value.length == 0) - { + if (se.value.length == 0) { if (ev.preventDefault) ev.preventDefault(); @@ -941,16 +922,14 @@ function cbi_dynlist_init(parent, datatype, optional, choices) if (next && next.nextSibling.name == prefix) next = next.nextSibling; - switch (ev.keyCode) - { + switch (ev.keyCode) { /* backspace, delete */ case 8: case 46: - var del = (se.nodeName.toLowerCase() == 'select') + var del = (matchesElem(se, 'select')) ? true : (se.value.length == 0); - if (del) - { + if (del) { if (ev.preventDefault) ev.preventDefault(); @@ -994,9 +973,8 @@ function cbi_dynlist_init(parent, datatype, optional, choices) var se = ev.target ? ev.target : ev.srcElement; var input = se.previousSibling; - while (input && input.name != prefix) { + while (input && input.name != prefix) input = input.previousSibling; - } if (se.classList.contains('cbi-button-remove')) { input.value = ''; @@ -1024,39 +1002,45 @@ function cbi_t_add(section, tab) { var t = document.getElementById('tab.' + section + '.' + tab); var c = document.getElementById('container.' + section + '.' + tab); - if( t && c ) { + if (t && c) { cbi_t[section] = (cbi_t[section] || [ ]); cbi_t[section][tab] = { 'tab': t, 'container': c, 'cid': c.id }; } } function cbi_t_switch(section, tab) { - if( cbi_t[section] && cbi_t[section][tab] ) { + if (cbi_t[section] && cbi_t[section][tab]) { var o = cbi_t[section][tab]; var h = document.getElementById('tab.' + section); - for( var tid in cbi_t[section] ) { + + for (var tid in cbi_t[section]) { var o2 = cbi_t[section][tid]; - if( o.tab.id != o2.tab.id ) { - o2.tab.className = o2.tab.className.replace(/(^| )cbi-tab( |$)/, " cbi-tab-disabled "); + + if (o.tab.id != o2.tab.id) { + o2.tab.classList.remove('cbi-tab'); + o2.tab.classList.add('cbi-tab-disabled'); o2.container.style.display = 'none'; } else { - if(h) h.value = tab; - o2.tab.className = o2.tab.className.replace(/(^| )cbi-tab-disabled( |$)/, " cbi-tab "); + if(h) + h.value = tab; + + o2.tab.classList.remove('cbi-tab-disabled'); + o2.tab.classList.add('cbi-tab'); o2.container.style.display = 'block'; } } } - return false + + return false; } function cbi_t_update() { var hl_tabs = [ ]; var updated = false; - for( var sid in cbi_t ) - for( var tid in cbi_t[sid] ) - { + for (var sid in cbi_t) + for (var tid in cbi_t[sid]) { var t = cbi_t[sid][tid].tab; var c = cbi_t[sid][tid].container; @@ -1065,7 +1049,7 @@ function cbi_t_update() { } else if (t.style.display == 'none') { t.style.display = ''; - t.className += ' cbi-tab-highlighted'; + t.classList.add('cbi-tab-highlighted'); hl_tabs.push(t); } @@ -1075,8 +1059,8 @@ function cbi_t_update() { if (hl_tabs.length > 0) window.setTimeout(function() { - for( var i = 0; i < hl_tabs.length; i++ ) - hl_tabs[i].className = hl_tabs[i].className.replace(/ cbi-tab-highlighted/g, ''); + for (var i = 0; i < hl_tabs.length; i++) + hl_tabs[i].classList.remove('cbi-tab-highlighted'); }, 750); return updated; @@ -1086,16 +1070,14 @@ function cbi_t_update() { function cbi_validate_form(form, errmsg) { /* if triggered by a section removal or addition, don't validate */ - if( form.cbi_state == 'add-section' || form.cbi_state == 'del-section' ) + if (form.cbi_state == 'add-section' || form.cbi_state == 'del-section') return true; - if( form.cbi_validators ) - { - for( var i = 0; i < form.cbi_validators.length; i++ ) - { + if (form.cbi_validators) { + for (var i = 0; i < form.cbi_validators.length; i++) { var validator = form.cbi_validators[i]; - if( !validator() && errmsg ) - { + + if (!validator() && errmsg) { alert(errmsg); return false; } @@ -1123,10 +1105,8 @@ function cbi_validate_compile(code) code += ','; - for (var i = 0; i < code.length; i++) - { - if (esc) - { + for (var i = 0; i < code.length; i++) { + if (esc) { esc = false; continue; } @@ -1139,41 +1119,36 @@ function cbi_validate_compile(code) case 40: case 44: - if (depth <= 0) - { - if (pos < i) - { + if (depth <= 0) { + if (pos < i) { var label = code.substring(pos, i); label = label.replace(/\\(.)/g, '$1'); label = label.replace(/^[ \t]+/g, ''); label = label.replace(/[ \t]+$/g, ''); - if (label && !isNaN(label)) - { + if (label && !isNaN(label)) { stack.push(parseFloat(label)); } - else if (label.match(/^(['"]).*\1$/)) - { + else if (label.match(/^(['"]).*\1$/)) { stack.push(label.replace(/^(['"])(.*)\1$/, '$2')); } - else if (typeof cbi_validators[label] == 'function') - { + else if (typeof cbi_validators[label] == 'function') { stack.push(cbi_validators[label]); stack.push(null); } - else - { + else { throw "Syntax error, unhandled token '"+label+"'"; } } + pos = i+1; } + depth += (code.charCodeAt(i) == 40); break; case 41: - if (--depth <= 0) - { + if (--depth <= 0) { if (typeof stack[stack.length-2] != 'function') throw "Syntax error, argument list follows non-function"; @@ -1182,6 +1157,7 @@ function cbi_validate_compile(code) pos = i+1; } + break; } } @@ -1194,23 +1170,20 @@ function cbi_validate_field(cbid, optional, type) var field = (typeof cbid == "string") ? document.getElementById(cbid) : cbid; var vstack; try { vstack = cbi_validate_compile(type); } catch(e) { }; - if (field && vstack && typeof vstack[0] == "function") - { + if (field && vstack && typeof vstack[0] == "function") { var validator = function() { // is not detached - if( field.form ) - { - field.className = field.className.replace(/ cbi-input-invalid/g, ''); + if (field.form) { + field.classList.remove('cbi-input-invalid'); // validate value var value = (field.options && field.options.selectedIndex > -1) ? field.options[field.options.selectedIndex].value : field.value; - if (!(((value.length == 0) && optional) || vstack[0].apply(value, vstack[1]))) - { + if (!(((value.length == 0) && optional) || vstack[0].apply(value, vstack[1]))) { // invalid - field.className += ' cbi-input-invalid'; + field.classList.add('cbi-input-invalid'); return false; } } @@ -1218,7 +1191,7 @@ function cbi_validate_field(cbid, optional, type) return true; }; - if( ! field.form.cbi_validators ) + if (!field.form.cbi_validators) field.form.cbi_validators = [ ]; field.form.cbi_validators.push(validator); @@ -1226,8 +1199,7 @@ function cbi_validate_field(cbid, optional, type) cbi_bind(field, "blur", validator); cbi_bind(field, "keyup", validator); - if (field.nodeName == 'SELECT') - { + if (matchesElem(field, 'select')) { cbi_bind(field, "change", validator); cbi_bind(field, "click", validator); } @@ -1291,7 +1263,8 @@ function cbi_row_swap(elem, up, store) input.value = ids.join(' '); window.scrollTo(0, tr.offsetTop); - window.setTimeout(function() { tr.classList.add('flash'); }, 1); + void tr.offsetWidth; + tr.classList.add('flash'); return false; } @@ -1300,20 +1273,16 @@ function cbi_tag_last(container) { var last; - for (var i = 0; i < container.childNodes.length; i++) - { + for (var i = 0; i < container.childNodes.length; i++) { var c = container.childNodes[i]; - if (c.nodeType == 1 && c.nodeName.toLowerCase() == 'div') - { - c.className = c.className.replace(/ cbi-value-last$/, ''); + if (matchesElem(c, 'div')) { + c.classList.remove('cbi-value-last'); last = c; } } if (last) - { - last.className += ' cbi-value-last'; - } + last.classList.add('cbi-value-last'); } function cbi_submit(elem, name, value, action) @@ -1350,8 +1319,9 @@ String.prototype.format = function() if (typeof(s) !== 'string' && !(s instanceof String)) return ''; - for( var i = 0; i < r.length; i += 2 ) + for (var i = 0; i < r.length; i += 2) s = s.replace(r[i], r[i+1]); + return s; } @@ -1360,22 +1330,18 @@ String.prototype.format = function() var re = /^(([^%]*)%('.|0|\x20)?(-)?(\d+)?(\.\d+)?(%|b|c|d|u|f|o|s|x|X|q|h|j|t|m))/; var a = b = [], numSubstitutions = 0, numMatches = 0; - while (a = re.exec(str)) - { + while (a = re.exec(str)) { var m = a[1]; var leftpart = a[2], pPad = a[3], pJustify = a[4], pMinLength = a[5]; var pPrecision = a[6], pType = a[7]; numMatches++; - if (pType == '%') - { + if (pType == '%') { subst = '%'; } - else - { - if (numSubstitutions < arguments.length) - { + else { + if (numSubstitutions < arguments.length) { var param = arguments[numSubstitutions++]; var pad = ''; @@ -1400,8 +1366,7 @@ String.prototype.format = function() var subst = param; - switch(pType) - { + switch(pType) { case 'b': subst = (+param || 0).toString(2); break; @@ -1517,16 +1482,20 @@ String.prototype.nobr = function() String.format = function() { var a = [ ]; + for (var i = 1; i < arguments.length; i++) a.push(arguments[i]); + return ''.format.apply(arguments[0], a); } String.nobr = function() { var a = [ ]; + for (var i = 1; i < arguments.length; i++) a.push(arguments[i]); + return ''.nobr.apply(arguments[0], a); } @@ -1569,12 +1538,16 @@ function toElem(s) return elem || null; } +function matchesElem(node, selector) +{ + return ((node.matches && node.matches(selector)) || + (node.msMatchesSelector && node.msMatchesSelector(selector))); +} + function findParent(node, selector) { while (node) - if (node.msMatchesSelector && node.msMatchesSelector(selector)) - return node; - else if (node.matches && node.matches(selector)) + if (matchesElem(node, selector)) return node; else node = node.parentNode; @@ -1801,7 +1774,7 @@ CBIDropdown = { div.appendChild(E('input', { type: 'hidden', name: s.hasAttribute('name') ? s.getAttribute('name') : (sb.getAttribute('name') || ''), - value: s.hasAttribute('value') ? s.getAttribute('value') : s.innerText + value: s.hasAttribute('data-value') ? s.getAttribute('data-value') : s.innerText })); }); @@ -1813,7 +1786,7 @@ CBIDropdown = { return; document.querySelectorAll('.focus').forEach(function(e) { - if (e.nodeName.toLowerCase() !== 'input') { + if (!matchesElem(e, 'input')) { e.classList.remove('focus'); e.blur(); } @@ -1840,7 +1813,7 @@ CBIDropdown = { var new_item = null; ul.childNodes.forEach(function(li) { - if (li.getAttribute && li.getAttribute('value') === item) + if (li.getAttribute && li.getAttribute('data-value') === item) new_item = li; }); @@ -1851,7 +1824,7 @@ CBIDropdown = { if (tpl) markup = (tpl.textContent || tpl.innerHTML || tpl.firstChild.data).replace(/^<!--|-->$/, '').trim(); else - markup = '<li value="{{value}}">{{value}}</li>'; + markup = '<li data-value="{{value}}">{{value}}</li>'; new_item = E(markup.replace(/{{value}}/g, item)); @@ -1926,7 +1899,7 @@ function cbi_dropdown_init(sb) { ndisplay--; - if (this.optional && !ul.querySelector('li[value=""]')) { + if (this.optional && !ul.querySelector('li[data-value=""]')) { var placeholder = E('li', { placeholder: '' }, this.placeholder); ul.firstChild ? ul.insertBefore(placeholder, ul.firstChild) : ul.appendChild(placeholder); } @@ -1952,7 +1925,7 @@ function cbi_dropdown_init(sb) { sb.addEventListener('click', function(ev) { if (!this.hasAttribute('open')) { - if (ev.target.nodeName.toLowerCase() !== 'input') + if (!matchesElem(ev.target, 'input')) sbox.openDropdown(this); } else { @@ -1966,7 +1939,7 @@ function cbi_dropdown_init(sb) { }); sb.addEventListener('keydown', function(ev) { - if (ev.target.nodeName.toLowerCase() === 'input') + if (matchesElem(ev.target, 'input')) return; if (!this.hasAttribute('open')) { @@ -2062,8 +2035,12 @@ function cbi_dropdown_init(sb) { create.addEventListener('keydown', function(ev) { switch (ev.keyCode) { case 13: - sbox.createItems(sb, this.value); ev.preventDefault(); + + if (this.classList.contains('cbi-input-invalid')) + return; + + sbox.createItems(sb, this.value); this.value = ''; this.blur(); break; @@ -2094,7 +2071,7 @@ function cbi_dropdown_init(sb) { cbi_dropdown_init.prototype = CBIDropdown; function cbi_update_table(table, data, placeholder) { - target = isElem(table) ? table : document.querySelector(table); + var target = isElem(table) ? table : document.querySelector(table); if (!isElem(target)) return; diff --git a/modules/luci-base/luasrc/dispatcher.luadoc b/modules/luci-base/luasrc/dispatcher.luadoc index ddf534b3e1..f26256953a 100644 --- a/modules/luci-base/luasrc/dispatcher.luadoc +++ b/modules/luci-base/luasrc/dispatcher.luadoc @@ -22,7 +22,7 @@ Check whether a dispatch node shall be visible ]] ---[[ -Return a sorted table of visible childs within a given node +Return a sorted table of visible children within a given node @class function @name node_childs diff --git a/modules/luci-base/luasrc/http.lua b/modules/luci-base/luasrc/http.lua index f4ede4b8a5..20b55f2854 100644 --- a/modules/luci-base/luasrc/http.lua +++ b/modules/luci-base/luasrc/http.lua @@ -335,13 +335,13 @@ end -- Content-Type. Stores all extracted data associated with its parameter name -- in the params table within the given message object. Multiple parameter -- values are stored as tables, ordinary ones as strings. --- If an optional file callback function is given then it is feeded with the +-- If an optional file callback function is given then it is fed with the -- file contents chunk by chunk and only the extracted file name is stored -- within the params table. The callback function will be called subsequently -- with three arguments: -- o Table containing decoded (name, file) and raw (headers) mime header data -- o String value containing a chunk of the file data --- o Boolean which indicates wheather the current chunk is the last one (eof) +-- o Boolean which indicates whether the current chunk is the last one (eof) function mimedecode_message_body(src, msg, file_cb) local parser, header, field local len, maxlen = 0, tonumber(msg.env.CONTENT_LENGTH or nil) diff --git a/modules/luci-base/luasrc/http.luadoc b/modules/luci-base/luasrc/http.luadoc index f8121230b6..8f6f380d8b 100644 --- a/modules/luci-base/luasrc/http.luadoc +++ b/modules/luci-base/luasrc/http.luadoc @@ -204,13 +204,13 @@ Stores all extracted data associated with its parameter name in the params table within the given message object. Multiple parameter values are stored as tables, ordinary ones as strings. -If an optional file callback function is given then it is feeded with the +If an optional file callback function is given then it is fed with the file contents chunk by chunk and only the extracted file name is stored within the params table. The callback function will be called subsequently with three arguments: o Table containing decoded (name, file) and raw (headers) mime header data o String value containing a chunk of the file data - o Boolean which indicates wheather the current chunk is the last one (eof) + o Boolean which indicates whether the current chunk is the last one (eof) @class function @name mimedecode_message_body diff --git a/modules/luci-base/luasrc/model/uci.lua b/modules/luci-base/luasrc/model/uci.lua index 2119a210bb..a50e28a871 100644 --- a/modules/luci-base/luasrc/model/uci.lua +++ b/modules/luci-base/luasrc/model/uci.lua @@ -15,7 +15,7 @@ local type, tostring, tonumber, unpack = type, tostring, tonumber, unpack -- cursor factory, modify data (via Cursor.add, Cursor.delete, etc.), -- save the changes to the staging area via Cursor.save and finally -- Cursor.commit the data to the actual config files. --- LuCI then needs to Cursor.apply the changes so deamons etc. are +-- LuCI then needs to Cursor.apply the changes so daemons etc. are -- reloaded. module "luci.model.uci" diff --git a/modules/luci-base/luasrc/model/uci.luadoc b/modules/luci-base/luasrc/model/uci.luadoc index d798b00338..0189d49aa1 100644 --- a/modules/luci-base/luasrc/model/uci.luadoc +++ b/modules/luci-base/luasrc/model/uci.luadoc @@ -5,7 +5,7 @@ The typical workflow for UCI is: Get a cursor instance from the cursor factory, modify data (via Cursor.add, Cursor.delete, etc.), save the changes to the staging area via Cursor.save and finally Cursor.commit the data to the actual config files. -LuCI then needs to Cursor.apply the changes so deamons etc. are +LuCI then needs to Cursor.apply the changes so daemons etc. are reloaded. @cstyle instance ]] @@ -172,7 +172,7 @@ has the same effect as deleting the option. ---[[ Create a sub-state of this cursor. -The sub-state is tied to the parent curser, means it the parent unloads or +The sub-state is tied to the parent cursor, means it the parent unloads or loads configs, the sub state will do so as well. @class function @@ -339,7 +339,7 @@ Set the configuration directory. ]] ---[[ -Set the directory for uncommited changes. +Set the directory for uncommitted changes. @class function @name Cursor.set_savedir diff --git a/modules/luci-base/luasrc/sys.luadoc b/modules/luci-base/luasrc/sys.luadoc index 1c1fa92602..3c7f69c6e9 100644 --- a/modules/luci-base/luasrc/sys.luadoc +++ b/modules/luci-base/luasrc/sys.luadoc @@ -18,7 +18,7 @@ Execute a given shell command and capture its standard output @class function @name exec @param command Command to call -@return String containg the return the output of the command +@return String containing the return the output of the command ]] ---[[ @@ -38,7 +38,7 @@ exists. @class function @name getenv @param var Name of the environment variable to retrieve (optional) -@return String containg the value of the specified variable +@return String containing the value of the specified variable @return Table containing all variables if no variable name is given ]] @@ -279,7 +279,7 @@ LuCI system utilities / user related functions. ]] ---[[ -Retrieve user informations for given uid. +Retrieve user information for given uid. @class function @name getuser @@ -305,7 +305,7 @@ Test whether given string matches the password of a given system user. @name user.checkpasswd @param username String containing the Unix user name @param pass String containing the password to compare -@return Boolean indicating wheather the passwords are equal +@return Boolean indicating whether the passwords are equal ]] ---[[ diff --git a/modules/luci-base/luasrc/sys/iptparser.lua b/modules/luci-base/luasrc/sys/iptparser.lua deleted file mode 100644 index 7ff665e7af..0000000000 --- a/modules/luci-base/luasrc/sys/iptparser.lua +++ /dev/null @@ -1,374 +0,0 @@ ---[[ - -Iptables parser and query library -(c) 2008-2009 Jo-Philipp Wich <jow@openwrt.org> -(c) 2008-2009 Steven Barth <steven@midlink.org> - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -$Id$ - -]]-- - -local luci = {} -luci.util = require "luci.util" -luci.sys = require "luci.sys" -luci.ip = require "luci.ip" - -local pcall = pcall -local io = require "io" -local tonumber, ipairs, table = tonumber, ipairs, table - -module("luci.sys.iptparser") - -IptParser = luci.util.class() - -function IptParser.__init__( self, family ) - self._family = (tonumber(family) == 6) and 6 or 4 - self._rules = { } - self._chains = { } - self._tables = { } - - local t = self._tables - local s = self:_supported_tables(self._family) - - if s.filter then t[#t+1] = "filter" end - if s.nat then t[#t+1] = "nat" end - if s.mangle then t[#t+1] = "mangle" end - if s.raw then t[#t+1] = "raw" end - - if self._family == 4 then - self._nulladdr = "0.0.0.0/0" - self._command = "iptables -t %s --line-numbers -nxvL" - else - self._nulladdr = "::/0" - self._command = "ip6tables -t %s --line-numbers -nxvL" - end - - self:_parse_rules() -end - -function IptParser._supported_tables( self, family ) - local tables = { } - local ok, lines = pcall(io.lines, - (family == 6) and "/proc/net/ip6_tables_names" - or "/proc/net/ip_tables_names") - - if ok and lines then - local line - for line in lines do - tables[line] = true - end - end - - return tables -end - --- search criteria as only argument. If args is nil or an empty table then all --- rules will be returned. --- --- The following keys in the args table are recognized: --- <ul> --- <li> table - Match rules that are located within the given table --- <li> chain - Match rules that are located within the given chain --- <li> target - Match rules with the given target --- <li> protocol - Match rules that match the given protocol, rules with --- protocol "all" are always matched --- <li> source - Match rules with the given source, rules with source --- "0.0.0.0/0" (::/0) are always matched --- <li> destination - Match rules with the given destination, rules with --- destination "0.0.0.0/0" (::/0) are always matched --- <li> inputif - Match rules with the given input interface, rules --- with input interface "*" (=all) are always matched --- <li> outputif - Match rules with the given output interface, rules --- with output interface "*" (=all) are always matched --- <li> flags - Match rules that match the given flags, current --- supported values are "-f" (--fragment) --- and "!f" (! --fragment) --- <li> options - Match rules containing all given options --- </ul> --- The return value is a list of tables representing the matched rules. --- Each rule table contains the following fields: --- <ul> --- <li> index - The index number of the rule --- <li> table - The table where the rule is located, can be one --- of "filter", "nat" or "mangle" --- <li> chain - The chain where the rule is located, e.g. "INPUT" --- or "postrouting_wan" --- <li> target - The rule target, e.g. "REJECT" or "DROP" --- <li> protocol The matching protocols, e.g. "all" or "tcp" --- <li> flags - Special rule options ("--", "-f" or "!f") --- <li> inputif - Input interface of the rule, e.g. "eth0.0" --- or "*" for all interfaces --- <li> outputif - Output interface of the rule,e.g. "eth0.0" --- or "*" for all interfaces --- <li> source - The source ip range, e.g. "0.0.0.0/0" (::/0) --- <li> destination - The destination ip range, e.g. "0.0.0.0/0" (::/0) --- <li> options - A list of specific options of the rule, --- e.g. { "reject-with", "tcp-reset" } --- <li> packets - The number of packets matched by the rule --- <li> bytes - The number of total bytes matched by the rule --- </ul> --- Example: --- <pre> --- ip = luci.sys.iptparser.IptParser() --- result = ip.find( { --- target="REJECT", --- protocol="tcp", --- options={ "reject-with", "tcp-reset" } --- } ) --- </pre> --- This will match all rules with target "-j REJECT", --- protocol "-p tcp" (or "-p all") --- and the option "--reject-with tcp-reset". -function IptParser.find( self, args ) - - local args = args or { } - local rv = { } - - args.source = args.source and self:_parse_addr(args.source) - args.destination = args.destination and self:_parse_addr(args.destination) - - for i, rule in ipairs(self._rules) do - local match = true - - -- match table - if not ( not args.table or args.table:lower() == rule.table ) then - match = false - end - - -- match chain - if not ( match == true and ( - not args.chain or args.chain == rule.chain - ) ) then - match = false - end - - -- match target - if not ( match == true and ( - not args.target or args.target == rule.target - ) ) then - match = false - end - - -- match protocol - if not ( match == true and ( - not args.protocol or rule.protocol == "all" or - args.protocol:lower() == rule.protocol - ) ) then - match = false - end - - -- match source - if not ( match == true and ( - not args.source or rule.source == self._nulladdr or - self:_parse_addr(rule.source):contains(args.source) - ) ) then - match = false - end - - -- match destination - if not ( match == true and ( - not args.destination or rule.destination == self._nulladdr or - self:_parse_addr(rule.destination):contains(args.destination) - ) ) then - match = false - end - - -- match input interface - if not ( match == true and ( - not args.inputif or rule.inputif == "*" or - args.inputif == rule.inputif - ) ) then - match = false - end - - -- match output interface - if not ( match == true and ( - not args.outputif or rule.outputif == "*" or - args.outputif == rule.outputif - ) ) then - match = false - end - - -- match flags (the "opt" column) - if not ( match == true and ( - not args.flags or rule.flags == args.flags - ) ) then - match = false - end - - -- match specific options - if not ( match == true and ( - not args.options or - self:_match_options( rule.options, args.options ) - ) ) then - match = false - end - - -- insert match - if match == true then - rv[#rv+1] = rule - end - end - - return rv -end - - --- through external commands. -function IptParser.resync( self ) - self._rules = { } - self._chain = nil - self:_parse_rules() -end - - -function IptParser.tables( self ) - return self._tables -end - - -function IptParser.chains( self, table ) - local lookup = { } - local chains = { } - for _, r in ipairs(self:find({table=table})) do - if not lookup[r.chain] then - lookup[r.chain] = true - chains[#chains+1] = r.chain - end - end - return chains -end - - --- and "rules". The "rules" field is a table of rule tables. -function IptParser.chain( self, table, chain ) - return self._chains[table:lower()] and self._chains[table:lower()][chain] -end - - -function IptParser.is_custom_target( self, target ) - for _, r in ipairs(self._rules) do - if r.chain == target then - return true - end - end - return false -end - - --- [internal] Parse address according to family. -function IptParser._parse_addr( self, addr ) - if self._family == 4 then - return luci.ip.IPv4(addr) - else - return luci.ip.IPv6(addr) - end -end - --- [internal] Parse iptables output from all tables. -function IptParser._parse_rules( self ) - - for i, tbl in ipairs(self._tables) do - - self._chains[tbl] = { } - - for i, rule in ipairs(luci.util.execl(self._command % tbl)) do - - if rule:find( "^Chain " ) == 1 then - - local crefs - local cname, cpol, cpkt, cbytes = rule:match( - "^Chain ([^%s]*) %(policy (%w+) " .. - "(%d+) packets, (%d+) bytes%)" - ) - - if not cname then - cname, crefs = rule:match( - "^Chain ([^%s]*) %((%d+) references%)" - ) - end - - self._chain = cname - self._chains[tbl][cname] = { - policy = cpol, - packets = tonumber(cpkt or 0), - bytes = tonumber(cbytes or 0), - references = tonumber(crefs or 0), - rules = { } - } - - else - if rule:find("%d") == 1 then - - local rule_parts = luci.util.split( rule, "%s+", nil, true ) - local rule_details = { } - - -- cope with rules that have no target assigned - if rule:match("^%d+%s+%d+%s+%d+%s%s") then - table.insert(rule_parts, 4, nil) - end - - -- ip6tables opt column is usually zero-width - if self._family == 6 then - table.insert(rule_parts, 6, "--") - end - - rule_details["table"] = tbl - rule_details["chain"] = self._chain - rule_details["index"] = tonumber(rule_parts[1]) - rule_details["packets"] = tonumber(rule_parts[2]) - rule_details["bytes"] = tonumber(rule_parts[3]) - rule_details["target"] = rule_parts[4] - rule_details["protocol"] = rule_parts[5] - rule_details["flags"] = rule_parts[6] - rule_details["inputif"] = rule_parts[7] - rule_details["outputif"] = rule_parts[8] - rule_details["source"] = rule_parts[9] - rule_details["destination"] = rule_parts[10] - rule_details["options"] = { } - - for i = 11, #rule_parts do - if #rule_parts[i] > 0 then - rule_details["options"][i-10] = rule_parts[i] - end - end - - self._rules[#self._rules+1] = rule_details - - self._chains[tbl][self._chain].rules[ - #self._chains[tbl][self._chain].rules + 1 - ] = rule_details - end - end - end - end - - self._chain = nil -end - - --- [internal] Return true if optlist1 contains all elements of optlist 2. --- Return false in all other cases. -function IptParser._match_options( self, o1, o2 ) - - -- construct a hashtable of first options list to speed up lookups - local oh = { } - for i, opt in ipairs( o1 ) do oh[opt] = true end - - -- iterate over second options list - -- each string in o2 must be also present in o1 - -- if o2 contains a string which is not found in o1 then return false - for i, opt in ipairs( o2 ) do - if not oh[opt] then - return false - end - end - - return true -end diff --git a/modules/luci-base/luasrc/sys/iptparser.luadoc b/modules/luci-base/luasrc/sys/iptparser.luadoc deleted file mode 100644 index 071e7d52e4..0000000000 --- a/modules/luci-base/luasrc/sys/iptparser.luadoc +++ /dev/null @@ -1,69 +0,0 @@ ----[[ -LuCI iptables parser and query library - -@cstyle instance -]] -module "luci.sys.iptparser" - ----[[ -Create a new iptables parser object. - -@class function -@name IptParser -@param family Number specifying the address family. 4 for IPv4, 6 for IPv6 -@return IptParser instance -]] - ----[[ -Find all firewall rules that match the given criteria. Expects a table with - -search criteria as only argument. If args is nil or an empty table then all -rules will be returned. -]] - ----[[ -Rebuild the internal lookup table, for example when rules have changed - -through external commands. -@class function -@name IptParser.resync -@return nothing -]] - ----[[ -Find the names of all tables. - -@class function -@name IptParser.tables -@return Table of table names. -]] - ----[[ -Find the names of all chains within the given table name. - -@class function -@name IptParser.chains -@param table String containing the table name -@return Table of chain names in the order they occur. -]] - ----[[ -Return the given firewall chain within the given table name. - -@class function -@name IptParser.chain -@param table String containing the table name -@param chain String containing the chain name -@return Table containing the fields "policy", "packets", "bytes" --- and "rules". The "rules" field is a table of rule tables. -]] - ----[[ -Test whether the given target points to a custom chain. - -@class function -@name IptParser.is_custom_target -@param target String containing the target action -@return Boolean indicating whether target is a custom chain. -]] - diff --git a/modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua b/modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua index 47cb901a5b..c6f4477dff 100644 --- a/modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua +++ b/modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua @@ -16,14 +16,14 @@ TZ = { { 'Africa/Brazzaville', 'WAT-1' }, { 'Africa/Bujumbura', 'CAT-2' }, { 'Africa/Cairo', 'EET-2' }, - { 'Africa/Casablanca', 'WET0WEST,M3.5.0,M10.5.0/3' }, + { 'Africa/Casablanca', '<+01>-1' }, { 'Africa/Ceuta', 'CET-1CEST,M3.5.0,M10.5.0/3' }, { 'Africa/Conakry', 'GMT0' }, { 'Africa/Dakar', 'GMT0' }, { 'Africa/Dar es Salaam', 'EAT-3' }, { 'Africa/Djibouti', 'EAT-3' }, { 'Africa/Douala', 'WAT-1' }, - { 'Africa/El Aaiun', 'WET0WEST,M3.5.0,M10.5.0/3' }, + { 'Africa/El Aaiun', '<+01>-1' }, { 'Africa/Freetown', 'GMT0' }, { 'Africa/Gaborone', 'CAT-2' }, { 'Africa/Harare', 'CAT-2' }, @@ -179,7 +179,7 @@ TZ = { { 'America/Resolute', 'CST6CDT,M3.2.0,M11.1.0' }, { 'America/Rio Branco', '<-05>5' }, { 'America/Santarem', '<-03>3' }, - { 'America/Santiago', '<-04>4<-03>,M8.2.6/24,M5.2.6/24' }, + { 'America/Santiago', '<-04>4<-03>,M9.1.6/24,M4.1.6/24' }, { 'America/Santo Domingo', 'AST4' }, { 'America/Sao Paulo', '<-03>3<-02>,M11.1.0/0,M2.3.0/0' }, { 'America/Scoresbysund', '<-01>1<+00>,M3.5.0/0,M10.5.0/1' }, @@ -261,7 +261,7 @@ TZ = { { 'Asia/Macau', 'CST-8' }, { 'Asia/Magadan', '<+11>-11' }, { 'Asia/Makassar', 'WITA-8' }, - { 'Asia/Manila', '<+08>-8' }, + { 'Asia/Manila', 'PST-8' }, { 'Asia/Muscat', '<+04>-4' }, { 'Asia/Nicosia', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, { 'Asia/Novokuznetsk', '<+07>-7' }, @@ -270,7 +270,7 @@ TZ = { { 'Asia/Oral', '<+05>-5' }, { 'Asia/Phnom Penh', '<+07>-7' }, { 'Asia/Pontianak', 'WIB-7' }, - { 'Asia/Pyongyang', 'KST-8:30' }, + { 'Asia/Pyongyang', 'KST-9' }, { 'Asia/Qatar', '<+03>-3' }, { 'Asia/Qyzylorda', '<+06>-6' }, { 'Asia/Riyadh', '<+03>-3' }, @@ -358,7 +358,7 @@ TZ = { { 'Europe/Busingen', 'CET-1CEST,M3.5.0,M10.5.0/3' }, { 'Europe/Chisinau', 'EET-2EEST,M3.5.0,M10.5.0/3' }, { 'Europe/Copenhagen', 'CET-1CEST,M3.5.0,M10.5.0/3' }, - { 'Europe/Dublin', 'GMT0IST,M3.5.0/1,M10.5.0' }, + { 'Europe/Dublin', 'IST-1GMT0,M10.5.0,M3.5.0/1' }, { 'Europe/Gibraltar', 'CET-1CEST,M3.5.0,M10.5.0/3' }, { 'Europe/Guernsey', 'GMT0BST,M3.5.0/1,M10.5.0' }, { 'Europe/Helsinki', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, @@ -400,7 +400,7 @@ TZ = { { 'Europe/Vatican', 'CET-1CEST,M3.5.0,M10.5.0/3' }, { 'Europe/Vienna', 'CET-1CEST,M3.5.0,M10.5.0/3' }, { 'Europe/Vilnius', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, - { 'Europe/Volgograd', '<+03>-3' }, + { 'Europe/Volgograd', '<+04>-4' }, { 'Europe/Warsaw', 'CET-1CEST,M3.5.0,M10.5.0/3' }, { 'Europe/Zagreb', 'CET-1CEST,M3.5.0,M10.5.0/3' }, { 'Europe/Zaporozhye', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, @@ -421,11 +421,11 @@ TZ = { { 'Pacific/Bougainville', '<+11>-11' }, { 'Pacific/Chatham', '<+1245>-12:45<+1345>,M9.5.0/2:45,M4.1.0/3:45' }, { 'Pacific/Chuuk', '<+10>-10' }, - { 'Pacific/Easter', '<-06>6<-05>,M8.2.6/22,M5.2.6/22' }, + { 'Pacific/Easter', '<-06>6<-05>,M9.1.6/22,M4.1.6/22' }, { 'Pacific/Efate', '<+11>-11' }, { 'Pacific/Enderbury', '<+13>-13' }, { 'Pacific/Fakaofo', '<+13>-13' }, - { 'Pacific/Fiji', '<+12>-12<+13>,M11.1.0,M1.2.1/147' }, + { 'Pacific/Fiji', '<+12>-12<+13>,M11.1.0,M1.2.2/123' }, { 'Pacific/Funafuti', '<+12>-12' }, { 'Pacific/Galapagos', '<-06>6' }, { 'Pacific/Gambier', '<-09>9' }, diff --git a/modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua b/modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua index cf5afeb9d8..e63e2a6958 100644 --- a/modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua +++ b/modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua @@ -9,7 +9,6 @@ OFFSET = { wat = 3600, -- WAT cat = 7200, -- CAT eet = 7200, -- EET - wet = 0, -- WET sast = 7200, -- SAST hst = -36000, -- HST hdt = -32400, -- HDT @@ -34,8 +33,9 @@ OFFSET = { idt = 10800, -- IDT pkt = 18000, -- PKT wita = 28800, -- WITA - kst = 30600, -- KST + kst = 32400, -- KST jst = 32400, -- JST + wet = 0, -- WET acst = 34200, -- ACST acdt = 37800, -- ACDT aest = 36000, -- AEST diff --git a/modules/luci-base/luasrc/template.lua b/modules/luci-base/luasrc/template.lua index 588028c2ee..ed46f50753 100644 --- a/modules/luci-base/luasrc/template.lua +++ b/modules/luci-base/luasrc/template.lua @@ -95,6 +95,6 @@ function Template.render(self, scope) local stat, err = util.copcall(self.template) if not stat then error("Failed to execute template '" .. self.name .. "'.\n" .. - "A runtime error occured: " .. tostring(err or "(nil)")) + "A runtime error occurred: " .. tostring(err or "(nil)")) end end diff --git a/modules/luci-base/luasrc/util.lua b/modules/luci-base/luasrc/util.lua index f16b3afb2e..1a329f3f20 100644 --- a/modules/luci-base/luasrc/util.lua +++ b/modules/luci-base/luasrc/util.lua @@ -262,7 +262,7 @@ end -- one token per invocation, the tokens are separated by whitespace. If the -- input value is a table, it is transformed into a string first. A nil value --- will result in a valid interator which aborts with the first invocation. +-- will result in a valid iterator which aborts with the first invocation. function imatch(v) if type(v) == "table" then local k = nil diff --git a/modules/luci-base/luasrc/util.luadoc b/modules/luci-base/luasrc/util.luadoc index c4f28d039a..4ec68dd1ef 100644 --- a/modules/luci-base/luasrc/util.luadoc +++ b/modules/luci-base/luasrc/util.luadoc @@ -158,7 +158,7 @@ Return a matching iterator for the given value. The iterator will return one token per invocation, the tokens are separated by whitespace. If the input value is a table, it is transformed into a string first. -A nil value will result in a valid interator which aborts with the first invocation. +A nil value will result in a valid iterator which aborts with the first invocation. @class function @name imatch @@ -289,7 +289,7 @@ will be stripped before it is returned. ]] ---[[ -Strips unnescessary lua bytecode from given string. +Strips unnecessary lua bytecode from given string. Information like line numbers and debugging numbers will be discarded. Original version by Peter Cawley (http://lua-users.org/lists/lua-l/2008-02/msg01158.html) diff --git a/modules/luci-base/luasrc/view/cbi/apply_widget.htm b/modules/luci-base/luasrc/view/cbi/apply_widget.htm index ce279edd40..0df16e88c8 100644 --- a/modules/luci-base/luasrc/view/cbi/apply_widget.htm +++ b/modules/luci-base/luasrc/view/cbi/apply_widget.htm @@ -93,11 +93,11 @@ if (r.status === 204) { uci_status_message('warning', '<h4><%:Configuration has been rolled back!%></h4>' + - '<p><%:The device could not be reached within %d seconds after applying the pending changes, which caused the configuration to be rolled back for safety reasons. If you believe that the configuration changes are correct nonetheless, perform an unchecked configuration apply. Alternatively, you can dismiss this warning and edit changes before attempting to apply again, or revert all pending changes to keep the currently working configuration state.%></p>'.format(uci_apply_rollback) + + '<p><%:The device could not be reached within %d seconds after applying the pending changes, which caused the configuration to be rolled back for safety reasons. If you believe that the configuration changes are correct nonetheless, proceed by applying anyway. Alternatively, you can dismiss this warning and edit changes before attempting to apply again, or revert all pending changes to keep the currently working configuration state.%></p>'.format(uci_apply_rollback) + '<div class="right">' + '<input type="button" class="btn" onclick="uci_status_message(false)" value="<%:Dismiss%>" /> ' + '<input type="button" class="btn cbi-button-action important" onclick="uci_revert()" value="<%:Revert changes%>" /> ' + - '<input type="button" class="btn cbi-button-negative important" onclick="uci_apply(false)" value="<%:Apply unchecked%>" />' + + '<input type="button" class="btn cbi-button-negative important" onclick="uci_apply(false)" value="<%:Apply anyway%>" />' + '</div>'); return; diff --git a/modules/luci-base/luasrc/view/cbi/dropdown.htm b/modules/luci-base/luasrc/view/cbi/dropdown.htm index cf8c03d22c..6f4b89905b 100644 --- a/modules/luci-base/luasrc/view/cbi/dropdown.htm +++ b/modules/luci-base/luasrc/view/cbi/dropdown.htm @@ -30,7 +30,7 @@ <li<%= attr("data-index", i) .. attr("data-depends", self:deplist2json(section, self.deplist[i])) .. - attr("value", key) .. + attr("data-value", key) .. ifattr(selected[key], "selected", "selected") %>> <%=pcdata(self.vallist[i])%> diff --git a/modules/luci-base/luasrc/view/cbi/firewall_zoneforwards.htm b/modules/luci-base/luasrc/view/cbi/firewall_zoneforwards.htm index b38e4b13db..dc251dbd94 100644 --- a/modules/luci-base/luasrc/view/cbi/firewall_zoneforwards.htm +++ b/modules/luci-base/luasrc/view/cbi/firewall_zoneforwards.htm @@ -63,7 +63,7 @@ if empty then %> <label class="zonebadge zonebadge-empty"> - <strong><%=zone:forward():upper()%></strong> + <strong><%=def:forward():upper()%></strong> </label> <% end %> </div> diff --git a/modules/luci-base/luasrc/view/cbi/firewall_zonelist.htm b/modules/luci-base/luasrc/view/cbi/firewall_zonelist.htm index 3a108020b6..7ecec10a8f 100644 --- a/modules/luci-base/luasrc/view/cbi/firewall_zonelist.htm +++ b/modules/luci-base/luasrc/view/cbi/firewall_zonelist.htm @@ -30,7 +30,7 @@ ifattr(self.rmempty or self.optional, "optional", "optional") %>> <script type="item-template"><!-- - <li value="{{value}}"> + <li data-value="{{value}}"> <span class="zonebadge" style="background:repeating-linear-gradient(45deg,rgba(204,204,204,0.5),rgba(204,204,204,0.5) 5px,rgba(255,255,255,0.5) 5px,rgba(255,255,255,0.5) 10px)"> <strong>{{value}}:</strong><em>(<%:create%>)</em> </span> @@ -38,7 +38,7 @@ --></script> <ul> <% if self.allowlocal then %> - <li value=""<%=ifattr(checked[""], "selected", "selected")%>> + <li data-value=""<%=ifattr(checked[""], "selected", "selected")%>> <span style="background-color:<%=fwm.zone.get_color()%>" class="zonebadge"> <strong><%:Device%></strong> <% if self.allowany and self.allowlocal then -%> @@ -48,14 +48,14 @@ </span> </li> <% elseif self.widget ~= "checkbox" and (self.rmempty or self.optional) then %> - <li value=""<%=ifattr(checked[""], "selected", "selected")%>> + <li data-value=""<%=ifattr(checked[""], "selected", "selected")%>> <span class="zonebadge"> <em><%:unspecified%></em> </span> </li> <% end %> <% if self.allowany then %> - <li value="*"<%=ifattr(checked["*"], "selected", "selected")%>> + <li data-value="*"<%=ifattr(checked["*"], "selected", "selected")%>> <span style="background-color:<%=fwm.zone.get_color()%>" class="zonebadge"> <strong><%:Any zone%></strong> <% if self.allowany and self.allowlocal then %>(<%:forward%>)<% end %> @@ -67,7 +67,7 @@ if zone:name() ~= self.exclude then selected = selected or (value == zone:name()) %> - <li<%=attr("value", zone:name()) .. ifattr(checked[zone:name()], "selected", "selected")%>> + <li<%=attr("data-value", zone:name()) .. ifattr(checked[zone:name()], "selected", "selected")%>> <span style="background-color:<%=zone:get_color()%>" class="zonebadge"> <strong><%=zone:name()%>:</strong> <%- @@ -94,11 +94,11 @@ <% end end %> <% if self.widget ~= "checkbox" and not self.nocreate then %> - <li value="-"> + <li data-value="-"> <span class="zonebadge"> <em><%:create%>:</em> <input type="password" style="display:none" /> - <input class="create-item-input" type="text" /> + <input class="create-item-input" type="text" data-type="and(uciname,maxlength(11))" data-optional="true" /> </span> </li> <% end %> diff --git a/modules/luci-base/luasrc/view/cbi/network_ifacelist.htm b/modules/luci-base/luasrc/view/cbi/network_ifacelist.htm index a97e9ef6d0..55a7e31687 100644 --- a/modules/luci-base/luasrc/view/cbi/network_ifacelist.htm +++ b/modules/luci-base/luasrc/view/cbi/network_ifacelist.htm @@ -47,7 +47,7 @@ ifattr(self.widget == "checkbox", "optional", "optional") %>> <script type="item-template"><!-- - <li value="{{value}}"> + <li data-value="{{value}}"> <img title="<%:Custom Interface%>: "{{value}}"" src="<%=resource%>/icons/ethernet_disabled.png" /> <span class="hide-open">{{value}}</span> <span class="hide-close"><%:Custom Interface%>: "{{value}}"</span> @@ -61,7 +61,7 @@ iface:name() ~= self.exclude then %> <li<%= - attr("value", iface:name()) .. + attr("data-value", iface:name()) .. ifattr(checked[iface:name()], "selected", "selected") %>> <img<%=attr("title", iface:get_i18n())%> src="<%=resource%>/icons/<%=iface:type()%><%=iface:is_up() and "" or "_disabled"%>.png" /> @@ -78,7 +78,7 @@ </li> <% end end %> <% if not self.nocreate then %> - <li value=""> + <li data-value=""> <img title="<%:Custom Interface%>" src="<%=resource%>/icons/ethernet_disabled.png" /> <span><%:Custom Interface%>:</span> <input type="password" style="display:none" /> diff --git a/modules/luci-base/luasrc/view/cbi/network_netlist.htm b/modules/luci-base/luasrc/view/cbi/network_netlist.htm index ba6ebb8434..d3efcc062f 100644 --- a/modules/luci-base/luasrc/view/cbi/network_netlist.htm +++ b/modules/luci-base/luasrc/view/cbi/network_netlist.htm @@ -26,7 +26,7 @@ ifattr(self.widget == "checkbox", "optional", "optional") %>> <script type="item-template"><!-- - <li value="{{value}}"> + <li data-value="{{value}}"> <span class="ifacebadge" style="background:repeating-linear-gradient(45deg,rgba(204,204,204,0.5),rgba(204,204,204,0.5) 5px,rgba(255,255,255,0.5) 5px,rgba(255,255,255,0.5) 10px)"> {{value}}: <em>(<%:create%>)</em> </span> @@ -34,7 +34,7 @@ --></script> <ul> <% if self.widget ~= "checkbox" then %> - <li value=""<%= ifattr(not value, "selected", "selected") %>> + <li data-value=""<%= ifattr(not value, "selected", "selected") %>> <em><%:unspecified%></em> </li> <% end %> @@ -44,7 +44,7 @@ (net:name() ~= self.exclude) and (not self.novirtual or not net:is_virtual()) then %> - <li<%= attr("value", net:name()) .. ifattr(checked[net:name()], "selected", "selected") %>> + <li<%= attr("data-value", net:name()) .. ifattr(checked[net:name()], "selected", "selected") %>> <span class="ifacebadge"><%=net:name()%>: <% local empty = true @@ -63,7 +63,7 @@ <% end end %> <% if not self.nocreate then %> - <li value="-"<%= ifattr(not value and self.widget ~= "checkbox", "selected", "selected") %>> + <li data-value="-"<%= ifattr(not value and self.widget ~= "checkbox", "selected", "selected") %>> <em> <%- if self.widget == "checkbox" then -%> <%:create:%> diff --git a/modules/luci-base/po/ca/base.po b/modules/luci-base/po/ca/base.po index a7c06d5e36..146d9fe05f 100644 --- a/modules/luci-base/po/ca/base.po +++ b/modules/luci-base/po/ca/base.po @@ -409,10 +409,10 @@ msgstr "Configuració d'antena" msgid "Any zone" msgstr "Qualsevol zona" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -696,6 +696,9 @@ msgstr "Aplegant dades..." msgid "Command" msgstr "Ordre" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Configuració comuna" @@ -940,6 +943,9 @@ msgstr "" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1458,6 +1464,9 @@ msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "" "No mostris l'<abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "Nom de màquina" @@ -2021,6 +2030,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "" @@ -2195,9 +2207,6 @@ msgstr "Cap servidor DHCP configurat en aquesta interfície" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "No hi ha cadenes en aquesta taula" - msgid "No files found" msgstr "Cap fitxer trobat" @@ -2222,7 +2231,7 @@ msgstr "No hi ha llistes de paquets disponibles" msgid "No password set!" msgstr "No hi ha cap contrasenya establerta!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "No hi ha regles en aquesta cadena" msgid "No scan results available yet..." @@ -2273,6 +2282,9 @@ msgstr "Nslookup" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "D'acord" @@ -2563,6 +2575,9 @@ msgstr "Paquets" msgid "Please enter your username and password." msgstr "Si us plau entra el teu nom d'usuari i contrasenya." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Política" @@ -2901,6 +2916,9 @@ msgstr "" "Les rutes especifiquen per quina interfície i passarel·la es pot arribar a " "un cert ordinador o xarxa." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "" @@ -3017,6 +3035,9 @@ msgstr "" msgid "Show current backup file list" msgstr "" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "Atura aquesta interfície" @@ -3038,6 +3059,9 @@ msgstr "Mida (.ipk)" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Salta" @@ -3142,6 +3166,9 @@ msgid "" "configurations where only hosts with a corresponding lease are served." msgstr "" +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Estat" @@ -3278,10 +3305,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3482,6 +3508,9 @@ msgstr "Sincronització de l'hora" msgid "Time Synchronization is not configured yet." msgstr "La sincronització de hora encara no s'ha configurat." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Zona horària" @@ -3863,6 +3892,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "qualsevol" @@ -3981,6 +4022,9 @@ msgstr "" msgid "routed" msgstr "encaminat" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" @@ -4020,6 +4064,9 @@ msgstr "sí" msgid "« Back" msgstr "« Enrere" +#~ msgid "No chains in this table" +#~ msgstr "No hi ha cadenes en aquesta taula" + #~ msgid "Configuration files will be kept." #~ msgstr "Es mantindran els fitxers de configuració." diff --git a/modules/luci-base/po/cs/base.po b/modules/luci-base/po/cs/base.po index a9852f6c51..37cc646471 100644 --- a/modules/luci-base/po/cs/base.po +++ b/modules/luci-base/po/cs/base.po @@ -405,10 +405,10 @@ msgstr "Konfigurace antén" msgid "Any zone" msgstr "Libovolná zóna" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -690,6 +690,9 @@ msgstr "Probíhá sběr dat..." msgid "Command" msgstr "Příkaz" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Společná nastavení" @@ -936,6 +939,9 @@ msgstr "Zakázat nastavení DNS" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1456,6 +1462,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "Skrývat <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -2029,6 +2038,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "Nejvyšší povolené množství aktivních DHCP zápůjček" @@ -2203,9 +2215,6 @@ msgstr "Pro toto rozhraní není nastaven žádný DHCP server" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "Žádné řetězce v této tabulce" - msgid "No files found" msgstr "Nebyly nalezeny žádné soubory" @@ -2230,7 +2239,7 @@ msgstr "Seznam balíčků není k dispozici" msgid "No password set!" msgstr "Žádné heslo!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Žádná pravidla v tomto řetězci" msgid "No scan results available yet..." @@ -2281,6 +2290,9 @@ msgstr "Nslookup" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK" @@ -2572,6 +2584,9 @@ msgstr "Paketů" msgid "Please enter your username and password." msgstr "Prosím vložte vaše uživatelské jméno a heslo." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Politika" @@ -2915,6 +2930,9 @@ msgid "" msgstr "" "Trasy určují, přes jaké rozhraní a bránu může být konkrétního hosta dosaženo." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "Spustit kontrolu souborového systému před připojením zařízení" @@ -3033,6 +3051,9 @@ msgstr "" msgid "Show current backup file list" msgstr "Ukázat aktuální seznam záložních souborů" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "Shodit toho rozhraní" @@ -3054,6 +3075,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Přeskočit" @@ -3166,6 +3190,9 @@ msgstr "" "jmen DHCP klientům. Jsou také vyžadovány pro nedynamické konfigurace " "rozhraní, kde jsou povoleni pouze hosté s odpovídajícím nastavením." +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Stav" @@ -3308,10 +3335,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3512,6 +3538,9 @@ msgstr "Synchronizace času" msgid "Time Synchronization is not configured yet." msgstr "Synchronizace času dosud není nakonfigurována." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Časové pásmo" @@ -3893,6 +3922,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "libovolný" @@ -4011,6 +4052,9 @@ msgstr "" msgid "routed" msgstr "směrované" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" @@ -4050,6 +4094,9 @@ msgstr "ano" msgid "« Back" msgstr "« Zpět" +#~ msgid "No chains in this table" +#~ msgstr "Žádné řetězce v této tabulce" + #~ msgid "Configuration files will be kept." #~ msgstr "Konfigurační soubory budou zachovány." diff --git a/modules/luci-base/po/de/base.po b/modules/luci-base/po/de/base.po index 2154a4f084..917cf97ab6 100644 --- a/modules/luci-base/po/de/base.po +++ b/modules/luci-base/po/de/base.po @@ -412,14 +412,14 @@ msgstr "Antennenkonfiguration" msgid "Any zone" msgstr "Beliebige Zone" +msgid "Apply anyway" +msgstr "Ungeprüft anwenden" + msgid "Apply request failed with status <code>%h</code>" msgstr "" "Anforderung zur Anwendung der Änderungen mit Status <code>%h</code> " "fehlgeschlagen" -msgid "Apply unchecked" -msgstr "Ungeprüft anwenden" - msgid "Architecture" msgstr "Architektur" @@ -714,6 +714,9 @@ msgstr "Sammle Daten..." msgid "Command" msgstr "Befehl" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Allgemeine Konfiguration" @@ -971,6 +974,9 @@ msgstr "DNS-Verarbeitung deaktivieren" msgid "Disable Encryption" msgstr "Verschlüsselung deaktivieren" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "Dieses Netzwerk deaktivieren" @@ -1510,6 +1516,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "ESSID verstecken" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -2106,6 +2115,9 @@ msgstr "Manuell" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "Maximal erreichbare Datenrate (ATTNDR)" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "Maximal zulässige Anzahl von aktiven DHCP-Leases" @@ -2283,9 +2295,6 @@ msgstr "Kein DHCP Server auf dieser Schnittstelle eingerichtet" msgid "No NAT-T" msgstr "Kein NAT-T" -msgid "No chains in this table" -msgstr "Keine Ketten in dieser Tabelle" - msgid "No files found" msgstr "Keine Dateien gefunden" @@ -2311,7 +2320,7 @@ msgstr "Es sind keine Paketlisten vorhanden" msgid "No password set!" msgstr "Kein Passwort gesetzt!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Keine Regeln in dieser Kette" msgid "No scan results available yet..." @@ -2364,6 +2373,9 @@ msgstr "" "Anzahl der zwischengespeicherten DNS-Einträge. Maximum sind 10000 Einträge, " "\"0\" deaktiviert die Zwischenspeicherung." +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK" @@ -2670,6 +2682,9 @@ msgstr "Pkte." msgid "Please enter your username and password." msgstr "Bitte Benutzernamen und Passwort eingeben." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Standardregel" @@ -3029,6 +3044,9 @@ msgstr "" "Netzwerkrouten geben an, über welche Schnittstellen bestimmte Rechner oder " "Netzwerke erreicht werden können" +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "Vor dem Einhängen Dateisystemprüfung starten " @@ -3150,6 +3168,9 @@ msgstr "" msgid "Show current backup file list" msgstr "Zeige aktuelle Liste der gesicherten Dateien" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "Diese Schnittstelle herunterfahren" @@ -3171,6 +3192,9 @@ msgstr "Größe (.ipk)" msgid "Size of DNS query cache" msgstr "Größe des DNS-Caches" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Überspringen" @@ -3291,6 +3315,9 @@ msgstr "" "Konfigurationen benötigt auf denen lediglich Hosts mit zugehörigem " "statischem Lease-Eintrag bedient werden." +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Status" @@ -3444,10 +3471,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" "Das Gerät konnte nach dem Anwenden der ausstehenden Änderungen innerhalb von " "%d Sekunden nicht mehr erreicht werden, daher wurde die Änderungen aus " @@ -3671,6 +3697,9 @@ msgstr "Zeitsynchronisation" msgid "Time Synchronization is not configured yet." msgstr "Die Zeitsynchronisation wurde noch nicht konfiguriert." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Zeitzone" @@ -4063,6 +4092,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "beliebig" @@ -4179,6 +4220,9 @@ msgstr "Relay-Modus" msgid "routed" msgstr "routed" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "Server-Modus" @@ -4218,6 +4262,9 @@ msgstr "ja" msgid "« Back" msgstr "« Zurück" +#~ msgid "No chains in this table" +#~ msgstr "Keine Ketten in dieser Tabelle" + #~ msgid "Configuration files will be kept." #~ msgstr "Konfigurationsdateien sichern" diff --git a/modules/luci-base/po/el/base.po b/modules/luci-base/po/el/base.po index 3028cf227e..a8aa561187 100644 --- a/modules/luci-base/po/el/base.po +++ b/modules/luci-base/po/el/base.po @@ -412,10 +412,10 @@ msgstr "" msgid "Any zone" msgstr "Οιαδήποτε ζώνη" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -699,6 +699,9 @@ msgstr "Συλλογή δεδομένων..." msgid "Command" msgstr "Εντολή" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Κοινή Παραμετροποίηση" @@ -945,6 +948,9 @@ msgstr "Απενεργοποίηση ρυθμίσεων DNS" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1469,6 +1475,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "Κρυφό <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -2035,6 +2044,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "Μέγιστος επιτρεπόμενος αριθμός ενεργών DHCP leases" @@ -2211,9 +2223,6 @@ msgstr "Δεν υπάρχει ρυθμισμένος DHCP εξυπηρετητή msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "Δεν υπάρχουν αλυσίδες σε αυτόν τον πίνακα" - msgid "No files found" msgstr "Δε βρέθηκαν αρχεία" @@ -2238,7 +2247,7 @@ msgstr "Δεν υπάρχουν διαθέσιμες λίστες πακέτων msgid "No password set!" msgstr "Δεν έχει οριστεί κωδικός πρόσβασης!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Δεν υπάρχει κανόνας σε αυτή την αλυσίδα" msgid "No scan results available yet..." @@ -2289,6 +2298,9 @@ msgstr "" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "Εντάξει" @@ -2579,6 +2591,9 @@ msgstr "Πκτ." msgid "Please enter your username and password." msgstr "Παρακαλώ εισάγετε όνομα χρήστη και κωδικό πρόσβασης." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Πολιτική" @@ -2919,6 +2934,9 @@ msgstr "" "Οι διαδρομές ορίζουν τη διεπαφή και πύλη από την οποία κάποιος υπολογιστής ή " "δίκτυο μπορεί να είναι προσβάσιμο/ς." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "Εκτέλεση ελέγχου του συστήματος αρχείων πριν προσαρτηθεί η συσκευή" @@ -3035,6 +3053,9 @@ msgstr "" msgid "Show current backup file list" msgstr "" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "Απενεργοποίηση αυτής της διεπαφής" @@ -3056,6 +3077,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Παράκαμψη" @@ -3162,6 +3186,9 @@ msgid "" "configurations where only hosts with a corresponding lease are served." msgstr "" +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Κατάσταση" @@ -3296,10 +3323,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3483,6 +3509,9 @@ msgstr "" msgid "Time Synchronization is not configured yet." msgstr "" +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Ζώνη ώρας" @@ -3857,6 +3886,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "" @@ -3976,6 +4017,9 @@ msgstr "" msgid "routed" msgstr "" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" @@ -4015,6 +4059,9 @@ msgstr "ναι" msgid "« Back" msgstr "« Πίσω" +#~ msgid "No chains in this table" +#~ msgstr "Δεν υπάρχουν αλυσίδες σε αυτόν τον πίνακα" + #~ msgid "Configuration files will be kept." #~ msgstr "Τα αρχεία παραμετροποίησης θα διατηρηθούν." diff --git a/modules/luci-base/po/en/base.po b/modules/luci-base/po/en/base.po index ffbfe6f565..bc7bc1965d 100644 --- a/modules/luci-base/po/en/base.po +++ b/modules/luci-base/po/en/base.po @@ -403,10 +403,10 @@ msgstr "" msgid "Any zone" msgstr "Any zone" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -687,6 +687,9 @@ msgstr "Collecting data..." msgid "Command" msgstr "Command" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Common Configuration" @@ -932,6 +935,9 @@ msgstr "" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1445,6 +1451,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -2005,6 +2014,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "" @@ -2179,9 +2191,6 @@ msgstr "" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "No chains in this table" - msgid "No files found" msgstr "" @@ -2206,8 +2215,8 @@ msgstr "" msgid "No password set!" msgstr "" -msgid "No rules in this chain" -msgstr "No rules in this chain" +msgid "No rules in this chain." +msgstr "No rules in this chain." msgid "No scan results available yet..." msgstr "" @@ -2257,6 +2266,9 @@ msgstr "" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK" @@ -2547,6 +2559,9 @@ msgstr "Pkts." msgid "Please enter your username and password." msgstr "Please enter your username and password." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Policy" @@ -2885,6 +2900,9 @@ msgstr "" "Routes specify over which interface and gateway a certain host or network " "can be reached." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "" @@ -3000,6 +3018,9 @@ msgstr "" msgid "Show current backup file list" msgstr "" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "" @@ -3021,6 +3042,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Skip" @@ -3125,6 +3149,9 @@ msgid "" "configurations where only hosts with a corresponding lease are served." msgstr "" +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Status" @@ -3257,10 +3284,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3441,6 +3467,9 @@ msgstr "" msgid "Time Synchronization is not configured yet." msgstr "" +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Timezone" @@ -3815,6 +3844,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "" @@ -3933,6 +3974,9 @@ msgstr "" msgid "routed" msgstr "" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" @@ -3972,6 +4016,9 @@ msgstr "" msgid "« Back" msgstr "« Back" +#~ msgid "No chains in this table" +#~ msgstr "No chains in this table" + #~ msgid "Configuration files will be kept." #~ msgstr "Configuration files will be kept." diff --git a/modules/luci-base/po/es/base.po b/modules/luci-base/po/es/base.po index 0c21b8347e..23632fd57a 100644 --- a/modules/luci-base/po/es/base.po +++ b/modules/luci-base/po/es/base.po @@ -409,10 +409,10 @@ msgstr "Configuración de la antena" msgid "Any zone" msgstr "Cualquier zona" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -696,6 +696,9 @@ msgstr "Un momento..." msgid "Command" msgstr "Comando" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Configuración común" @@ -943,6 +946,9 @@ msgstr "Desactivar configuración de DNS" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1465,6 +1471,9 @@ msgstr "Claves públicas SSH. Ponga una por línea." msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "Ocultar <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -2044,6 +2053,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "Número máximo de cesiones DHCP activas" @@ -2218,9 +2230,6 @@ msgstr "No se ha configurado un servidor DHCP para esta interfaz" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "No hay cadenas en esta tabla" - msgid "No files found" msgstr "No se han encontrado ficheros" @@ -2245,7 +2254,7 @@ msgstr "No hay listas de paquetes disponibles" msgid "No password set!" msgstr "¡Sin contraseña!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "No hay reglas en esta cadena" msgid "No scan results available yet..." @@ -2296,6 +2305,9 @@ msgstr "NSLookup" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "Aceptar" @@ -2587,6 +2599,9 @@ msgstr "Paq." msgid "Please enter your username and password." msgstr "Por favor, introduzca su nombre de usuario y contraseña." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Política" @@ -2930,6 +2945,9 @@ msgstr "" "Las rutas especifican sobre qué interfaz y pasarela se puede llegar a una " "cierta máquina o red." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "Comprobar el sistema de ficheros antes de montar el dispositivo" @@ -3048,6 +3066,9 @@ msgstr "" msgid "Show current backup file list" msgstr "Mostrar lista de ficheros a salvar" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "Apagar esta interfaz" @@ -3069,6 +3090,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Saltar" @@ -3185,6 +3209,9 @@ msgstr "" "configuraciones de interfaz no dinámica en las que a cada máquina siempre se " "le quiere servir la misma dirección IP." +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Estado" @@ -3330,10 +3357,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3539,6 +3565,9 @@ msgstr "Sincronización horaria" msgid "Time Synchronization is not configured yet." msgstr "Sincronización horaria no configurada." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Zona horaria" @@ -3922,6 +3951,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "cualquiera" @@ -4040,6 +4081,9 @@ msgstr "" msgid "routed" msgstr "enrutado" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" @@ -4079,6 +4123,9 @@ msgstr "sí" msgid "« Back" msgstr "« Volver" +#~ msgid "No chains in this table" +#~ msgstr "No hay cadenas en esta tabla" + #~ msgid "Configuration files will be kept." #~ msgstr "Se mantendrán los ficheros de configuración." diff --git a/modules/luci-base/po/fr/base.po b/modules/luci-base/po/fr/base.po index 33eb7edf54..f96ecd3893 100644 --- a/modules/luci-base/po/fr/base.po +++ b/modules/luci-base/po/fr/base.po @@ -415,10 +415,10 @@ msgstr "Configuration de l'antenne" msgid "Any zone" msgstr "N'importe quelle zone" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -702,6 +702,9 @@ msgstr "Récupération de données..." msgid "Command" msgstr "Commande" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Configuration commune" @@ -949,6 +952,9 @@ msgstr "Désactiver la configuration DNS" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1478,6 +1484,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "Cacher le ESSID" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -2057,6 +2066,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "Nombre maximum de baux DHCP actifs" @@ -2231,9 +2243,6 @@ msgstr "Aucun serveur DHCP configuré sur cette interface" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "Aucune chaîne dans cette table" - msgid "No files found" msgstr "Aucun fichier trouvé" @@ -2258,7 +2267,7 @@ msgstr "Aucune liste de paquets disponible" msgid "No password set!" msgstr "Pas de mot de passe positionné !" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Aucune règle dans cette chaîne" msgid "No scan results available yet..." @@ -2309,6 +2318,9 @@ msgstr "Nslookup" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK" @@ -2599,6 +2611,9 @@ msgstr "Pqts." msgid "Please enter your username and password." msgstr "Saisissez votre nom d'utilisateur et mot de passe." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Politique" @@ -2941,6 +2956,9 @@ msgstr "" "Avec les routes statiques vous pouvez spécifier à travers quelle interface " "ou passerelle un réseau peut être contacté." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "" "Faire un vérification du système de fichiers avant de monter le périphérique" @@ -3060,6 +3078,9 @@ msgstr "" msgid "Show current backup file list" msgstr "Afficher la liste des fichiers de la sauvegarde actuelle" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "Arrêter cet interface" @@ -3081,6 +3102,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Passer au suivant" @@ -3195,6 +3219,9 @@ msgstr "" "interfaces sans configuration dynamique où l'on fournit un bail aux seuls " "hôtes configurés." +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Status" @@ -3340,10 +3367,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3555,6 +3581,9 @@ msgstr "Synchronisation de l'heure" msgid "Time Synchronization is not configured yet." msgstr "La synchronisation de l'heure n'est pas encore configurée." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Fuseau horaire" @@ -3941,6 +3970,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "n'importe lequel" @@ -4057,6 +4098,9 @@ msgstr "" msgid "routed" msgstr "routé" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" @@ -4096,6 +4140,9 @@ msgstr "oui" msgid "« Back" msgstr "« Retour" +#~ msgid "No chains in this table" +#~ msgstr "Aucune chaîne dans cette table" + #~ msgid "Configuration files will be kept." #~ msgstr "Les fichiers de configuration seront préservés." diff --git a/modules/luci-base/po/he/base.po b/modules/luci-base/po/he/base.po index 97047328c6..0b3acb89cc 100644 --- a/modules/luci-base/po/he/base.po +++ b/modules/luci-base/po/he/base.po @@ -404,10 +404,10 @@ msgstr "הגדרות אנטנה" msgid "Any zone" msgstr "כל תחום" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -681,6 +681,9 @@ msgstr "אוסף מידע..." msgid "Command" msgstr "פקודה" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "הגדרות נפוצות" @@ -925,6 +928,9 @@ msgstr "" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1429,6 +1435,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -1981,6 +1990,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "" @@ -2153,9 +2165,6 @@ msgstr "" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "" - msgid "No files found" msgstr "" @@ -2180,7 +2189,7 @@ msgstr "אין רשימת חבילות זמינה" msgid "No password set!" msgstr "לא הוגדרה סיסמה!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "" msgid "No scan results available yet..." @@ -2231,6 +2240,9 @@ msgstr "" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "" @@ -2515,6 +2527,9 @@ msgstr "" msgid "Please enter your username and password." msgstr "אנא הזן את שם המשתמש והסיסמה שלך:" +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "" @@ -2849,6 +2864,9 @@ msgid "" "can be reached." msgstr "" +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "" @@ -2965,6 +2983,9 @@ msgstr "" msgid "Show current backup file list" msgstr "" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "" @@ -2986,6 +3007,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "" @@ -3095,6 +3119,9 @@ msgstr "" "הן נחוצות גם עבור הגדרות ממשק שאינן דינאמיות, בהן מטופלות רק ישויות בעלות " "הקצאה מתאימה." +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "מצב" @@ -3227,10 +3254,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3396,6 +3422,9 @@ msgstr "סנכרון זמן" msgid "Time Synchronization is not configured yet." msgstr "סנכרון זמן עדיין לא הוגדר." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "אזור זמן" @@ -3763,6 +3792,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "כלשהו" @@ -3879,6 +3920,9 @@ msgstr "" msgid "routed" msgstr "מנותב" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" diff --git a/modules/luci-base/po/hu/base.po b/modules/luci-base/po/hu/base.po index 94d9ad109d..5a75deb784 100644 --- a/modules/luci-base/po/hu/base.po +++ b/modules/luci-base/po/hu/base.po @@ -408,10 +408,10 @@ msgstr "Antenna beállítások" msgid "Any zone" msgstr "Bármelyik zóna" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -697,6 +697,9 @@ msgstr "Adatok összegyűjtése..." msgid "Command" msgstr "Parancs" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Álatános beállítás" @@ -943,6 +946,9 @@ msgstr "DNS beállítás letiltása" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1467,6 +1473,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "<abbr title=\"Extended Service Set Identifier\">ESSID</abbr> elrejtése" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -2046,6 +2055,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "Aktív DHCP bérletek maximális száma" @@ -2220,9 +2232,6 @@ msgstr "Ehhez az interfészhez nincs DHCP kiszolgáló beállítva" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "Ez a tábla nem tartalmaz láncokat." - msgid "No files found" msgstr "Nem találhatók fájlok" @@ -2247,7 +2256,7 @@ msgstr "Csomaglisták nem állnak rendelkezésre" msgid "No password set!" msgstr "Nincs jelszó!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Ez a lánc nem tartalmaz szabályokat" msgid "No scan results available yet..." @@ -2298,6 +2307,9 @@ msgstr "Nslookup" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK" @@ -2589,6 +2601,9 @@ msgstr "csom." msgid "Please enter your username and password." msgstr "Adja meg a felhasználónevét és a jelszavát." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Szabály" @@ -2933,6 +2948,9 @@ msgstr "" "Az útvonalak határozzák meg, hogy bizonyos gépek illetve hálózatok melyik " "interfészen keresztül érhetők el." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "Fájlrendszer ellenőrzés futtatása az eszköz csatolása előtt" @@ -3051,6 +3069,9 @@ msgstr "" msgid "Show current backup file list" msgstr "Mentendő fájlok aktuális listájának megjelenítése" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "Interfész leállítása" @@ -3072,6 +3093,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Ugrás" @@ -3186,6 +3210,9 @@ msgstr "" "szükségesek, ahol a csak a megfelelő bérlettel rendelkező hosztok kerülnek " "kiszolgálásra." +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Állapot" @@ -3329,10 +3356,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3543,6 +3569,9 @@ msgstr "Idő szinkronizálás" msgid "Time Synchronization is not configured yet." msgstr "Idő szinkronizálás még nincs beállítva." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Időzóna" @@ -3928,6 +3957,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "bármelyik" @@ -4046,6 +4087,9 @@ msgstr "" msgid "routed" msgstr "irányított" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" @@ -4085,6 +4129,9 @@ msgstr "igen" msgid "« Back" msgstr "« Vissza" +#~ msgid "No chains in this table" +#~ msgstr "Ez a tábla nem tartalmaz láncokat." + #~ msgid "Configuration files will be kept." #~ msgstr "A konfigurációs fájlok megmaradnak." diff --git a/modules/luci-base/po/it/base.po b/modules/luci-base/po/it/base.po index 9ba9308e2c..b81b9c875e 100644 --- a/modules/luci-base/po/it/base.po +++ b/modules/luci-base/po/it/base.po @@ -417,10 +417,10 @@ msgstr "Configurazione dell'Antenna" msgid "Any zone" msgstr "Qualsiasi Zona" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -703,6 +703,9 @@ msgstr "Raccolgo i dati..." msgid "Command" msgstr "Comando" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Configurazioni Comuni" @@ -950,6 +953,9 @@ msgstr "Disabilita il setup dei DNS" msgid "Disable Encryption" msgstr "Disabilita Crittografia" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1472,6 +1478,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "Nascondi <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -2047,6 +2056,9 @@ msgstr "Manuale" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "" @@ -2221,9 +2233,6 @@ msgstr "Nessun Server DHCP configurato per questa interfaccia" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "" - msgid "No files found" msgstr "Nessun file trovato" @@ -2248,7 +2257,7 @@ msgstr "Nessuna lista pacchetti disponibile" msgid "No password set!" msgstr "Nessuna password immessa!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Nessuna regola in questa catena" msgid "No scan results available yet..." @@ -2299,6 +2308,9 @@ msgstr "" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK" @@ -2590,6 +2602,9 @@ msgstr "" msgid "Please enter your username and password." msgstr "Per favore inserisci il tuo username e la password." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "" @@ -2931,6 +2946,9 @@ msgstr "" "Le route specificano attraverso quale interfaccia e gateway un certo host o " "rete può essere raggiunto." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "Esegui un controllo del filesystem prima di montare il dispositivo" @@ -3046,6 +3064,9 @@ msgstr "" msgid "Show current backup file list" msgstr "" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "" @@ -3067,6 +3088,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Salta" @@ -3183,6 +3207,9 @@ msgstr "" "di configurazione non dinamici, dove solo gli host col contratto " "corrispondente vengono serviti." +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Stato" @@ -3326,10 +3353,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3511,6 +3537,9 @@ msgstr "Sincronizzazione Orario" msgid "Time Synchronization is not configured yet." msgstr "Sincronizzazione Orario non ancora configurata" +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Fuso orario" @@ -3898,6 +3927,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "qualsiasi" @@ -4016,6 +4057,9 @@ msgstr "" msgid "routed" msgstr "instradato" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" diff --git a/modules/luci-base/po/ja/base.po b/modules/luci-base/po/ja/base.po index 9d6b9b4b70..ced6c85252 100644 --- a/modules/luci-base/po/ja/base.po +++ b/modules/luci-base/po/ja/base.po @@ -3,7 +3,7 @@ msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-06-10 03:40+0200\n" -"PO-Revision-Date: 2018-09-20 05:12+0900\n" +"PO-Revision-Date: 2018-10-20 00:48+0900\n" "Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n" "Language: ja\n" "MIME-Version: 1.0\n" @@ -411,12 +411,12 @@ msgstr "アンテナ設定" msgid "Any zone" msgstr "全てのゾーン" +msgid "Apply anyway" +msgstr "チェックなしの適用" + msgid "Apply request failed with status <code>%h</code>" msgstr "適用リクエストはステータス <code>%h</code> により失敗しました" -msgid "Apply unchecked" -msgstr "チェックなしの適用" - msgid "Architecture" msgstr "アーキテクチャ" @@ -673,7 +673,7 @@ msgid "" "Click \"Generate archive\" to download a tar archive of the current " "configuration files." msgstr "" -"\"バックアップ アーカイブの作成\"をクリックすると、現在の設定ファイルをtar形" +"\"バックアップ アーカイブを生成\" をクリックすると、現在の設定ファイルをtar形" "式のアーカイブファイルとしてダウンロードします。" msgid "" @@ -705,6 +705,9 @@ msgstr "データ収集中です..." msgid "Command" msgstr "コマンド" +msgid "Comment" +msgstr "コメント" + msgid "Common Configuration" msgstr "一般設定" @@ -846,7 +849,7 @@ msgid "DNS forwardings" msgstr "DNSフォワーディング" msgid "DNS-Label / FQDN" -msgstr "" +msgstr "DNS-ラベル / FQDN" msgid "DNSSEC" msgstr "DNSSEC" @@ -962,8 +965,11 @@ msgstr "DNSセットアップを無効にする" msgid "Disable Encryption" msgstr "暗号化を無効にする" +msgid "Disable Inactivity Polling" +msgstr "非アクティブ状態ポーリングを無効化" + msgid "Disable this network" -msgstr "このネットワークを無効化" +msgstr "このネットワークを無効にします" msgid "Disabled" msgstr "無効" @@ -1094,7 +1100,7 @@ msgstr "" "ページをリロードします。" msgid "Edit this interface" -msgstr "インターフェースを編集" +msgstr "インターフェースを編集します" msgid "Edit this network" msgstr "ネットワークを編集" @@ -1161,13 +1167,13 @@ msgid "Enable this mount" msgstr "マウント設定を有効にする" msgid "Enable this network" -msgstr "このネットワークを有効化" +msgstr "このネットワークを有効にします" msgid "Enable this swap" msgstr "スワップ設定を有効にする" msgid "Enable/Disable" -msgstr "有効/無効" +msgstr "有効 / 無効" msgid "Enabled" msgstr "有効" @@ -1435,7 +1441,7 @@ msgid "Generate PMK locally" msgstr "" msgid "Generate archive" -msgstr "バックアップ アーカイブの作成" +msgstr "バックアップ アーカイブを生成" msgid "Generic 802.11%s Wireless Controller" msgstr "802.11%s 無線LANコントローラ" @@ -1490,6 +1496,9 @@ msgstr "SSH公開鍵認証で使用するSSH公開鍵を1行づつペースト msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "<abbr title=\"Extended Service Set Identifier\">ESSID</abbr>の隠匿" +msgid "Hide empty chains" +msgstr "空のチェインを非表示" + msgid "Host" msgstr "ホスト" @@ -1938,8 +1947,8 @@ msgstr "待ち受けポート" msgid "Listen only on the given interface or, if unspecified, on all" msgstr "" -"指定したインターフェースでのみアクセスを有効にします。設定しない場合はすべて" -"のインタフェースが対象です" +"指定されたインターフェースでのみ待ち受けを行います。設定しない場合はすべての" +"インタフェースが対象です。" msgid "Listening port for inbound DNS queries" msgstr "DNSクエリを受信するポート" @@ -2072,6 +2081,9 @@ msgstr "手動" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "許容される最大 Listen 間隔" + msgid "Maximum allowed number of active DHCP leases" msgstr "DHCPリースの許可される最大数" @@ -2248,9 +2260,6 @@ msgstr "このインターフェースにはDHCPサーバーが設定されて msgid "No NAT-T" msgstr "NAT-Tを使用しない" -msgid "No chains in this table" -msgstr "チェイン内にルールがありません" - msgid "No files found" msgstr "ファイルが見つかりませんでした" @@ -2275,7 +2284,7 @@ msgstr "パッケージ リストがありません" msgid "No password set!" msgstr "パスワードが設定されていません!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "チェイン内にルールがありません" msgid "No scan results available yet..." @@ -2328,6 +2337,9 @@ msgstr "" "キャッシュされる DNS エントリーの数です。(最大 10000 件。 0の場合はキャッ" "シュしません)" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK" @@ -2624,6 +2636,9 @@ msgstr "パケット" msgid "Please enter your username and password." msgstr "ユーザー名とパスワードを入力してください。" +msgid "Please update package lists first" +msgstr "最初にパッケージ リストを更新してください" + msgid "Policy" msgstr "ポリシー" @@ -2695,7 +2710,7 @@ msgid "Provide NTP server" msgstr "NTPサーバー機能を有効にする" msgid "Provide new network" -msgstr "新しいネットワークを設定する" +msgstr "新しいネットワークを設定します" msgid "Pseudo Ad-Hoc (ahdemo)" msgstr "擬似アドホック (ahdemo)" @@ -2828,7 +2843,7 @@ msgid "Recommended. IP addresses of the WireGuard interface." msgstr "WireGuard インターフェースのIPアドレスです。(推奨)" msgid "Reconnect this interface" -msgstr "インターフェースの再接続" +msgstr "インターフェースを再接続します" msgid "References" msgstr "参照カウンタ" @@ -2903,7 +2918,7 @@ msgid "Reset" msgstr "リセット" msgid "Reset Counters" -msgstr "カウンタのリセット" +msgstr "カウンタをリセット" msgid "Reset to defaults" msgstr "標準設定にリセット" @@ -2918,10 +2933,10 @@ msgid "Restart" msgstr "再起動" msgid "Restart Firewall" -msgstr "ファイアウォールの再起動" +msgstr "ファイアウォールを再起動" msgid "Restart radio interface" -msgstr "無線インターフェースの再起動" +msgstr "無線インターフェースを再起動します" msgid "Restore" msgstr "復元" @@ -2975,6 +2990,9 @@ msgstr "" "特定のホスト又はネットワークに、どのインターフェース及びゲートウェイを通して" "通信を行うか、経路情報を設定します。" +msgid "Rule" +msgstr "ルール" + msgid "Run a filesystem check before mounting the device" msgstr "デバイスのマウントを行う前にファイルシステムチェックを行う" @@ -3095,8 +3113,11 @@ msgstr "Short Preamble" msgid "Show current backup file list" msgstr "現在のバックアップファイルのリストを表示する" +msgid "Show empty chains" +msgstr "空のチェインを表示" + msgid "Shutdown this interface" -msgstr "インターフェースを終了" +msgstr "インターフェースを終了します" msgid "Signal" msgstr "信号強度" @@ -3116,6 +3137,9 @@ msgstr "サイズ (.ipk)" msgid "Size of DNS query cache" msgstr "DNS クエリ キャッシュのサイズ" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "スキップ" @@ -3159,7 +3183,7 @@ msgid "Specifies the directory the device is attached to" msgstr "デバイスが接続するディレクトリを設定します" msgid "Specifies the listening port of this <em>Dropbear</em> instance" -msgstr "<em>Dropbear</em>の受信ポートを設定してください" +msgstr "<em>Dropbear</em> の待ち受けポートを設定してください。" msgid "" "Specifies the maximum amount of failed ARP requests until hosts are presumed " @@ -3226,6 +3250,9 @@ msgstr "" "名をアサインします。また、クライアントは対応するリースを使用するホストがその1" "台のみで、かつ静的なインターフェース設定にする必要があります。" +msgid "Station inactivity limit" +msgstr "非アクティブなステーションの制限" + msgid "Status" msgstr "ステータス" @@ -3242,7 +3269,7 @@ msgid "Suppress logging" msgstr "ログの抑制" msgid "Suppress logging of the routine operation of these protocols" -msgstr "これらのプロトコルのルーチン的操作についてのログを抑制します。" +msgstr "これらのプロトコルの、ルーチン的操作についてのログを抑制します。" msgid "Swap" msgstr "スワップ" @@ -3371,10 +3398,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" "未適用の変更を適用後、デバイスは %d 秒以内に完了できなかった可能性がありま" "す。これは、安全上の理由によりロールバックされる設定に起因するものです。それ" @@ -3588,6 +3614,9 @@ msgstr "時刻設定" msgid "Time Synchronization is not configured yet." msgstr "時刻同期機能はまだ設定されていません。" +msgid "Time interval for rekeying GTK" +msgstr "Group Temporal Key (GTK) 再生成間隔" + msgid "Timezone" msgstr "タイムゾーン" @@ -3721,7 +3750,7 @@ msgid "Up" msgstr "上へ" msgid "Update lists" -msgstr "リストの更新" +msgstr "リストを更新" msgid "" "Upload a sysupgrade-compatible image here to replace the running firmware. " @@ -3958,8 +3987,8 @@ msgid "" "scripts like \"network\", your device might become inaccessible!</strong>" msgstr "" "ルーターが起動する際のサービスの有効化/無効化を行うことができます。また、変更" -"は再起動後に適用されます。<br /><strong>警告: \"network\"のような重要なサービ" -"スを無効にすると, ルーターにアクセスできなくなりますので、注意してください。" +"は再起動後に適用されます。<br /><strong>警告: \"network\" のような重要なサー" +"ビスを無効にするとルーターにアクセスできなくなりますので、注意してください。" "</strong>" msgid "" @@ -3975,6 +4004,18 @@ msgstr "" "バージョン 7以上にアップグレードするか、FirefoxやOpera、Safariなど別のブラウ" "ザーを使用してください。" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "全て" @@ -4093,6 +4134,9 @@ msgstr "リレー モード" msgid "routed" msgstr "routed" +msgid "sec" +msgstr "秒" + msgid "server mode" msgstr "サーバー モード" diff --git a/modules/luci-base/po/ko/base.po b/modules/luci-base/po/ko/base.po index 30ab1f79c5..2f94e495fa 100644 --- a/modules/luci-base/po/ko/base.po +++ b/modules/luci-base/po/ko/base.po @@ -397,10 +397,10 @@ msgstr "" msgid "Any zone" msgstr "" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -683,6 +683,9 @@ msgstr "Data 를 수집중입니다..." msgid "Command" msgstr "명령어" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "공통 설정" @@ -932,6 +935,9 @@ msgstr "" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1444,6 +1450,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "<abbr title=\"Extended Service Set Identifier\">ESSID</abbr> 숨기기" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "호스트" @@ -1998,6 +2007,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "Active DHCP lease 건의 최대 허용 숫자" @@ -2170,9 +2182,6 @@ msgstr "" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "이 table 에는 정의된 chain 이 없음" - msgid "No files found" msgstr "" @@ -2197,7 +2206,7 @@ msgstr "" msgid "No password set!" msgstr "암호 설정을 해주세요!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "" msgid "No scan results available yet..." @@ -2248,6 +2257,9 @@ msgstr "" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "" @@ -2540,6 +2552,9 @@ msgstr "Pkts." msgid "Please enter your username and password." msgstr "사용자이름과 암호를 입력해 주세요." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "" @@ -2878,6 +2893,9 @@ msgstr "" "Route 경로는 특정 호스트 혹은 네트워크가 사용해야 할 인터페이스와 gateway 정" "보를 나타냅니다." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "" @@ -2993,6 +3011,9 @@ msgstr "" msgid "Show current backup file list" msgstr "현재 백업 파일 목록 보기" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "이 인터페이스를 정지합니다" @@ -3014,6 +3035,9 @@ msgstr "크기 (.ipk)" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "" @@ -3121,6 +3145,9 @@ msgstr "" "할 때 사용됩니다. 이 기능은 또한 지정된 host 에 대해서만 주소 임대를 하도록 " "하는 non-dynamic 인터페이스 설정에도 사용됩니다." +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "상태" @@ -3258,10 +3285,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3439,6 +3465,9 @@ msgstr "시간 동기화" msgid "Time Synchronization is not configured yet." msgstr "시간 동기화가 아직 설정되지 않았습니다." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "시간대" @@ -3820,6 +3849,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "" @@ -3938,6 +3979,9 @@ msgstr "" msgid "routed" msgstr "" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" @@ -3977,6 +4021,9 @@ msgstr "" msgid "« Back" msgstr "" +#~ msgid "No chains in this table" +#~ msgstr "이 table 에는 정의된 chain 이 없음" + #~ msgid "Activate this network" #~ msgstr "이 네트워를 활성화합니다" diff --git a/modules/luci-base/po/ms/base.po b/modules/luci-base/po/ms/base.po index 609af43c9a..42c020806b 100644 --- a/modules/luci-base/po/ms/base.po +++ b/modules/luci-base/po/ms/base.po @@ -392,10 +392,10 @@ msgstr "" msgid "Any zone" msgstr "" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -666,6 +666,9 @@ msgstr "" msgid "Command" msgstr "Perintah" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "" @@ -906,6 +909,9 @@ msgstr "" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1416,6 +1422,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "Menyembunyikan ESSID" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -1977,6 +1986,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "" @@ -2151,9 +2163,6 @@ msgstr "" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "Tiada rantai dalam jadual ini" - msgid "No files found" msgstr "" @@ -2178,7 +2187,7 @@ msgstr "" msgid "No password set!" msgstr "" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Tidak ada peraturan dalam rantai ini" msgid "No scan results available yet..." @@ -2229,6 +2238,9 @@ msgstr "" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "Baik" @@ -2518,6 +2530,9 @@ msgstr "Pkts." msgid "Please enter your username and password." msgstr "Sila masukkan username dan kata laluan anda." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Dasar" @@ -2855,6 +2870,9 @@ msgstr "" "Laluan menentukan di mana interface dan gateway host atau rangkaian tertentu " "yang boleh dicapai." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "" @@ -2970,6 +2988,9 @@ msgstr "" msgid "Show current backup file list" msgstr "" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "" @@ -2991,6 +3012,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Skip" @@ -3095,6 +3119,9 @@ msgid "" "configurations where only hosts with a corresponding lease are served." msgstr "" +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Status" @@ -3230,10 +3257,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3415,6 +3441,9 @@ msgstr "" msgid "Time Synchronization is not configured yet." msgstr "" +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Zon masa" @@ -3783,6 +3812,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "" @@ -3899,6 +3940,9 @@ msgstr "" msgid "routed" msgstr "" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" @@ -3938,6 +3982,9 @@ msgstr "" msgid "« Back" msgstr "« Kembali" +#~ msgid "No chains in this table" +#~ msgstr "Tiada rantai dalam jadual ini" + #~ msgid "help" #~ msgstr "Membantu" diff --git a/modules/luci-base/po/no/base.po b/modules/luci-base/po/no/base.po index d30f4075da..dd4094df64 100644 --- a/modules/luci-base/po/no/base.po +++ b/modules/luci-base/po/no/base.po @@ -401,10 +401,10 @@ msgstr "Antennekonfigurasjon" msgid "Any zone" msgstr "Alle soner" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -687,6 +687,9 @@ msgstr "Henter data..." msgid "Command" msgstr "Kommando" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Vanlige Innstillinger" @@ -933,6 +936,9 @@ msgstr "Deaktiver DNS oppsett" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1453,6 +1459,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "Skjul <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -2021,6 +2030,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "Maksimalt antall aktive DHCP leieavtaler" @@ -2195,9 +2207,6 @@ msgstr "Ingen DHCP server er konfigurert for dette grensesnittet" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "Ingen lenker i denne tabellen" - msgid "No files found" msgstr "Ingen filer funnet" @@ -2222,7 +2231,7 @@ msgstr "Ingen pakkelister tilgjengelig" msgid "No password set!" msgstr "Ruteren er ikke passordbeskyttet!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Ingen regler i denne tabellen" msgid "No scan results available yet..." @@ -2273,6 +2282,9 @@ msgstr "Nslookup" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK" @@ -2565,6 +2577,9 @@ msgstr "Pakker." msgid "Please enter your username and password." msgstr "Skriv inn ditt brukernavn og passord." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Policy" @@ -2907,6 +2922,9 @@ msgstr "" "Ruter, angir hvilket nettverksgrensesnitt og hvilken gateway som brukes for " "å nå et gitt nettverk eller vert." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "Kjør filsystem sjekk før montering av enheten" @@ -3025,6 +3043,9 @@ msgstr "" msgid "Show current backup file list" msgstr "Vis gjeldende liste med sikkerhetskopifiler" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "Slå av dette grensesnittet" @@ -3046,6 +3067,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Gå videre" @@ -3157,6 +3181,9 @@ msgstr "" "vertsnavn til DHCP klienter. Dette er nødvendig om grensesnittet ikke er " "dynamisk konfigurert og kun klienter med dhcp leieavtale får IP." +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Status" @@ -3301,10 +3328,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3509,6 +3535,9 @@ msgstr "Tidssynkronisering" msgid "Time Synchronization is not configured yet." msgstr "Tiden Synkroniseringen er ikke konfigurert ennå." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Tidssone" @@ -3894,6 +3923,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "enhver" @@ -4012,6 +4053,9 @@ msgstr "" msgid "routed" msgstr "rutet" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" @@ -4051,6 +4095,9 @@ msgstr "ja" msgid "« Back" msgstr "« Tilbake" +#~ msgid "No chains in this table" +#~ msgstr "Ingen lenker i denne tabellen" + #~ msgid "Configuration files will be kept." #~ msgstr "Konfigurasjonsfiler vil bli bevart." diff --git a/modules/luci-base/po/pl/base.po b/modules/luci-base/po/pl/base.po index 66c0c7c569..c811c1316a 100644 --- a/modules/luci-base/po/pl/base.po +++ b/modules/luci-base/po/pl/base.po @@ -419,10 +419,10 @@ msgstr "Ustawienia anteny" msgid "Any zone" msgstr "Dowolna strefa" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -712,6 +712,9 @@ msgstr "Zbieranie danych..." msgid "Command" msgstr "Polecenie" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Konfiguracja podstawowa" @@ -968,6 +971,9 @@ msgstr "Wyłącz konfigurację DNS" msgid "Disable Encryption" msgstr "Wyłącz szyfrowanie" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "Wyłącz tą sieć" @@ -1503,6 +1509,9 @@ msgstr "" "Ukryj <abbr title=\"Extended Service Set Identifier (Nazwę sieci)\">ESSID</" "abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -2081,6 +2090,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "Max. Osiągalna przepustowość danych (ATTNDR)" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "Maksymalna dozwolona liczba aktywnych dzierżaw DHCP" @@ -2255,9 +2267,6 @@ msgstr "Brak skonfigurowanego serwera DHCP dla tego interfejsu" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "Brak łańcuchów w tej tablicy" - msgid "No files found" msgstr "Nie znaleziono plików" @@ -2282,7 +2291,7 @@ msgstr "Lista pakietów nie jest dostępna" msgid "No password set!" msgstr "Nie ustawiono hasła!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Brak zasad w tym łańcuchu" msgid "No scan results available yet..." @@ -2335,6 +2344,9 @@ msgstr "" "Liczba buforowanych wpisów DNS (max wynosi 10000, 0 oznacza brak pamięci " "podręcznej)" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK" @@ -2630,6 +2642,9 @@ msgstr "Pktw." msgid "Please enter your username and password." msgstr "Proszę wprowadź swój login i hasło." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Zasada" @@ -2979,6 +2994,9 @@ msgstr "" "Ścieżki routingu pokazują routerowi przez który interfejs oraz którą bramę " "może skomunikować się z daną siecią lub komputerem." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "" "Sprawdź czy system plików nie zawiera błędów przed zamontowaniem urządzenia" @@ -3103,6 +3121,9 @@ msgstr "Krótki Wstęp" msgid "Show current backup file list" msgstr "Pokaż aktualną listę plików do backupu" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "Wyłącz ten interfejs" @@ -3124,6 +3145,9 @@ msgstr "Rozmiar (.ipk)" msgid "Size of DNS query cache" msgstr "Rozmiar pamięci podręcznej zapytań DNS" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Pomiń" @@ -3238,6 +3262,9 @@ msgstr "" "niedynamicznych konfiguracji interfejsu, gdzie obsługiwane są tylko hosty z " "odpowiednim dzierżawami." +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Status" @@ -3383,10 +3410,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3601,6 +3627,9 @@ msgstr "Synchronizacja czasu" msgid "Time Synchronization is not configured yet." msgstr "Synchronizacja czasu nie jest jeszcze skonfigurowana." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Strefa czasowa" @@ -3992,6 +4021,18 @@ msgstr "" "zaktualizuj go do wersji co najmniej 7 lub użyj innej przeglądarki, takiej " "jak Firefox, Opera czy Safari." +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "dowolny" @@ -4111,6 +4152,9 @@ msgstr "" msgid "routed" msgstr "routowane" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "tryb serwera" @@ -4150,6 +4194,9 @@ msgstr "tak" msgid "« Back" msgstr "« Wróć" +#~ msgid "No chains in this table" +#~ msgstr "Brak łańcuchów w tej tablicy" + #~ msgid "Configuration files will be kept." #~ msgstr "Pliki konfiguracyjne zostaną zachowane." diff --git a/modules/luci-base/po/pt-br/base.po b/modules/luci-base/po/pt-br/base.po index b77d32dfc1..42f9d505d8 100644 --- a/modules/luci-base/po/pt-br/base.po +++ b/modules/luci-base/po/pt-br/base.po @@ -439,12 +439,12 @@ msgstr "Configuração da antena" msgid "Any zone" msgstr "Qualquer zona" +msgid "Apply anyway" +msgstr "Aplicar sem verificação" + msgid "Apply request failed with status <code>%h</code>" msgstr "Pedido para aplicar falhou com o estado <code>%h</code>" -msgid "Apply unchecked" -msgstr "Aplicar sem verificação" - msgid "Architecture" msgstr "Arquitetura" @@ -744,6 +744,9 @@ msgstr "Coletando dados..." msgid "Command" msgstr "Comando" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Configuração Comum" @@ -1007,6 +1010,9 @@ msgstr "Desabilita a configuração do DNS" msgid "Disable Encryption" msgstr "Desabilitar Cifragem" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "Desabilitar esta rede" @@ -1567,6 +1573,9 @@ msgstr "" "Ocultar <abbr title=\"Identificador de Conjunto de Serviços Estendidos" "\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "Equipamento" @@ -2179,6 +2188,9 @@ msgstr "" "Taxa de Dados Atingível Máxima (<abbr title=\"Maximum Attainable Data Rate" "\">ATTNDR</abbr>)" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "Número máximo permitido de alocações DHCP ativas" @@ -2355,9 +2367,6 @@ msgstr "Nenhum Servidor DHCP configurado para esta interface" msgid "No NAT-T" msgstr "Sem NAT-T" -msgid "No chains in this table" -msgstr "Nenhuma cadeira nesta tabela" - msgid "No files found" msgstr "Nenhum arquivo encontrado" @@ -2382,7 +2391,7 @@ msgstr "Nenhuma lista de pacotes disponível" msgid "No password set!" msgstr "Nenhuma senha definida!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Sem regras nesta cadeia" msgid "No scan results available yet..." @@ -2437,6 +2446,9 @@ msgstr "Nslookup" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "Número de entradas DNS em cache (máximo é 10000, 0 desabilita o cache)" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK" @@ -2746,6 +2758,9 @@ msgstr "Pcts." msgid "Please enter your username and password." msgstr "Entre com o seu usuário e senha." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Política" @@ -3107,6 +3122,9 @@ msgstr "" "As rotas especificam através de qual interface e roteador um certo destino " "podem ser alcançado." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "" "Execute a verificação do sistema de arquivos antes da montagem do dispositivo" @@ -3235,6 +3253,9 @@ msgstr "Preâmbulo curto" msgid "Show current backup file list" msgstr "Mostra a lista atual de arquivos para a cópia de segurança" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "Desligar esta interface" @@ -3256,6 +3277,9 @@ msgstr "Tamanho (.ipk)" msgid "Size of DNS query cache" msgstr "Tamanho do cache de consultas DNS" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Pular" @@ -3375,6 +3399,9 @@ msgstr "" "configurações não dinâmicas onde um computador com a alocação correspondente " "é provido." +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Estado" @@ -3524,10 +3551,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" "O dispositivo não foi alcançado em %d segundos depois de aplicar as " "configurações pendentes. Por questões de segurança, as configurações foram " @@ -3750,6 +3776,9 @@ msgstr "Sincronização de horário" msgid "Time Synchronization is not configured yet." msgstr "A sincronização do horário ainda não está configurada." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Fuso Horário" @@ -4151,6 +4180,18 @@ msgstr "" "Por favor, atualiza para, ao menos, a versão 7 ou use outro navegador como o " "Firefox, Opera ou Safari." +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "qualquer" @@ -4271,6 +4312,9 @@ msgstr "modo retransmissor" msgid "routed" msgstr "roteado" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "modo servidor" @@ -4310,6 +4354,9 @@ msgstr "sim" msgid "« Back" msgstr "« Voltar" +#~ msgid "No chains in this table" +#~ msgstr "Nenhuma cadeira nesta tabela" + #~ msgid "Configuration files will be kept." #~ msgstr "Os arquivos de configuração serão mantidos." diff --git a/modules/luci-base/po/pt/base.po b/modules/luci-base/po/pt/base.po index 10c6846e47..394572c631 100644 --- a/modules/luci-base/po/pt/base.po +++ b/modules/luci-base/po/pt/base.po @@ -414,10 +414,10 @@ msgstr "Configuração das Antenas" msgid "Any zone" msgstr "Qualquer zona" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -700,6 +700,9 @@ msgstr "A obter dados..." msgid "Command" msgstr "Comando" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Configuração comum" @@ -947,6 +950,9 @@ msgstr "Desativar configuração de DNS" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1474,6 +1480,9 @@ msgstr "" "Ocultar <abbr title=\"Identificador de Conjunto de Serviços Estendidos" "\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -2045,6 +2054,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "Número máximo permitido de concessões DHCP ativas" @@ -2219,9 +2231,6 @@ msgstr "Sem Servidor DHCP configurado nesta interface" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "Tabela sem chains" - msgid "No files found" msgstr "Não foram encontrados ficheiros" @@ -2246,7 +2255,7 @@ msgstr "Não há listas de pacotes disponiveis" msgid "No password set!" msgstr "Sem password definida!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Sem regras nesta cadeia" msgid "No scan results available yet..." @@ -2297,6 +2306,9 @@ msgstr "Nslookup" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK" @@ -2587,6 +2599,9 @@ msgstr "Pkts." msgid "Please enter your username and password." msgstr "Insira o seu username e password." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Política" @@ -2927,6 +2942,9 @@ msgstr "" "As rotas especificam através de que interfaces ou gateways podem ser " "alcançados determinadas redes ou hosts." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "" "Correr uma verificação do sistema de ficheiros antes de montar um dispositivo" @@ -3044,6 +3062,9 @@ msgstr "" msgid "Show current backup file list" msgstr "Mostrar lista ficheiros para backup" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "Desligar esta interface" @@ -3065,6 +3086,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Saltar" @@ -3169,6 +3193,9 @@ msgid "" "configurations where only hosts with a corresponding lease are served." msgstr "" +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Status" @@ -3307,10 +3334,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3511,6 +3537,9 @@ msgstr "Sincronização Horária" msgid "Time Synchronization is not configured yet." msgstr "A sincronização horária ainda não está configurada." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Fuso Horário" @@ -3889,6 +3918,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "qualquer" @@ -4008,6 +4049,9 @@ msgstr "" msgid "routed" msgstr "" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" @@ -4047,6 +4091,9 @@ msgstr "sim" msgid "« Back" msgstr "« Voltar" +#~ msgid "No chains in this table" +#~ msgstr "Tabela sem chains" + #~ msgid "Configuration files will be kept." #~ msgstr "Os ficheiros de configuração serão mantidos." diff --git a/modules/luci-base/po/ro/base.po b/modules/luci-base/po/ro/base.po index 3e8381d30b..e3bb7bb82a 100644 --- a/modules/luci-base/po/ro/base.po +++ b/modules/luci-base/po/ro/base.po @@ -400,10 +400,10 @@ msgstr "Configurarea Antenei" msgid "Any zone" msgstr "Orice Zona" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -676,6 +676,9 @@ msgstr "Colectez datele.." msgid "Command" msgstr "Comanda" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Configurarea obisnuita" @@ -918,6 +921,9 @@ msgstr "Dezactiveaza configuratia DNS" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1423,6 +1429,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "Ascunde <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -1978,6 +1987,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "" @@ -2150,9 +2162,6 @@ msgstr "Nici un server DHCP configurat pentru aceasta interfata" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "" - msgid "No files found" msgstr "Nici un fisier gasit" @@ -2177,7 +2186,7 @@ msgstr "" msgid "No password set!" msgstr "Nici o parola setata !" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "" msgid "No scan results available yet..." @@ -2228,6 +2237,9 @@ msgstr "" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK" @@ -2512,6 +2524,9 @@ msgstr "Packete." msgid "Please enter your username and password." msgstr "Introdu utilizatorul si parola." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "" @@ -2848,6 +2863,9 @@ msgid "" "can be reached." msgstr "" +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "" @@ -2964,6 +2982,9 @@ msgstr "" msgid "Show current backup file list" msgstr "" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "Opreste aceasta interfata" @@ -2985,6 +3006,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "" @@ -3089,6 +3113,9 @@ msgid "" "configurations where only hosts with a corresponding lease are served." msgstr "" +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Status" @@ -3221,10 +3248,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3391,6 +3417,9 @@ msgstr "" msgid "Time Synchronization is not configured yet." msgstr "" +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Fusul orar" @@ -3759,6 +3788,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "oricare" @@ -3875,6 +3916,9 @@ msgstr "" msgid "routed" msgstr "rutat" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" diff --git a/modules/luci-base/po/ru/base.po b/modules/luci-base/po/ru/base.po index f62cd93a6b..d733a1a898 100644 --- a/modules/luci-base/po/ru/base.po +++ b/modules/luci-base/po/ru/base.po @@ -3,11 +3,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Project-Id-Version: LuCI: base\n" "POT-Creation-Date: 2010-05-09 01:01+0300\n" -"PO-Revision-Date: 2018-09-05 21:48+0300\n" +"PO-Revision-Date: 2018-10-25 19:04+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" +"X-Generator: Poedit 2.2\n" "Last-Translator: Anton Kikin <a.kikin@tano-systems.com>\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" @@ -104,7 +104,7 @@ msgid "" "order of the resolvfile" msgstr "" "<abbr title=\"Система доменных имен\">DNS</abbr> сервера будут опрошены в " -"порядке, определенном в resolvfile файле." +"порядке, определенном в resolvfile файле" msgid "<abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "<abbr title=\"Расширенный идентификатор обслуживания\">ESSID</abbr>" @@ -222,10 +222,10 @@ msgid "Actions" msgstr "Действия" msgid "Active <abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Routes" -msgstr "Active <abbr title=\"Интернет протокол версии 4\">IPv4</abbr>-маршруты" +msgstr "Активные <abbr title=\"Интернет протокол версии 4\">IPv4</abbr>-маршруты" msgid "Active <abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Routes" -msgstr "Active <abbr title=\"Интернет протокол версии 6\">IPv6</abbr>-маршруты" +msgstr "Активные <abbr title=\"Интернет протокол версии 6\">IPv6</abbr>-маршруты" msgid "Active Connections" msgstr "Активные соединения" @@ -244,10 +244,10 @@ msgstr "Добавить" msgid "Add local domain suffix to names served from hosts files" msgstr "" -"Добавить локальный суффикс домена для имен из файла хостов (/etc/hosts)." +"Добавить локальный суффикс домена для имен из файла хостов (/etc/hosts)" msgid "Add new interface..." -msgstr "Добавить новый интерфейс" +msgstr "Добавить новый интерфейс..." msgid "Additional Hosts files" msgstr "Дополнительный hosts файл" @@ -286,7 +286,7 @@ msgid "" "Allocate IP addresses sequentially, starting from the lowest available " "address" msgstr "" -"Выделять IP адреса последовательно, начинать с меньшего доступного адреса." +"Выделять IP-адреса последовательно, начинать с меньшего доступного адреса" msgid "Allocate IP sequentially" msgstr "Выделять IP-адреса последовательно" @@ -294,7 +294,7 @@ msgstr "Выделять IP-адреса последовательно" msgid "Allow <abbr title=\"Secure Shell\">SSH</abbr> password authentication" msgstr "" "Разрешить <abbr title=\"Secure Shell\">SSH</abbr> аутентификацию с помощью " -"пароля." +"пароля" msgid "Allow AP mode to disconnect STAs based on low ACK condition" msgstr "" @@ -316,20 +316,20 @@ msgstr "Разрешить локальный хост" msgid "Allow remote hosts to connect to local SSH forwarded ports" msgstr "" "Разрешить удаленным хостам подключаться к локальным перенаправленным портам " -"SSH." +"SSH" msgid "Allow root logins with password" msgstr "Root входит по паролю" msgid "Allow the <em>root</em> user to login with password" msgstr "" -"Разрешить пользователю <em>root</em> входить в систему с помощью пароля." +"Разрешить пользователю <em>root</em> входить в систему с помощью пароля" msgid "" "Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" msgstr "" "Разрешить ответы внешней сети в диапазоне 127.0.0.0/8, например, для RBL-" -"сервисов." +"сервисов" msgid "Allowed IPs" msgstr "Разрешенные IP-адреса" @@ -421,20 +421,19 @@ msgstr "Настройка антенн" msgid "Any zone" msgstr "Любая зона" +msgid "Apply anyway" +msgstr "Применить без проверки" + msgid "Apply request failed with status <code>%h</code>" msgstr "Ошибка <code>%h</code> запроса на применение" -msgid "Apply unchecked" -msgstr "Применить без проверки" - msgid "Architecture" msgstr "Архитектура" msgid "" "Assign a part of given length of every public IPv6-prefix to this interface" msgstr "" -"Задайте часть данной длины, каждому публичному IPv6-префиксу этого " -"интерфейса." +"Задайте часть данной длины, каждому публичному IPv6-префиксу этого интерфейса" msgid "Assign interfaces..." msgstr "Назначить интерфейсы..." @@ -478,23 +477,23 @@ msgstr "Автоматическая Homenet (HNCP)" msgid "Automatically check filesystem for errors before mounting" msgstr "" "Автоматическая проверка файловой системы раздела на ошибки, перед " -"монтированием." +"монтированием" msgid "Automatically mount filesystems on hotplug" msgstr "" -"Автоматическое монтирование раздела, при подключении к системе во время ее " -"работы, без выключения питания и остановки системы (hotplug)." +"Автоматическое монтирование раздела, при подключении к системе во время её " +"работы, без выключения питания и остановки системы (hotplug)" msgid "Automatically mount swap on hotplug" msgstr "" -"Автоматическое монтирование swap-а при подключении к системе во время ее " -"работы без выключения питания и остановки системы (hotplug)." +"Автоматическое монтирование раздела подкачки при подключении к системе во время " +"её работы без выключения питания и остановки системы (hotplug)" msgid "Automount Filesystem" msgstr "Hotplug раздела" msgid "Automount Swap" -msgstr "Hotplug swap раздела" +msgstr "Hotplug раздела подкачки" msgid "Available" msgstr "Доступно" @@ -639,7 +638,7 @@ msgid "Changes have been reverted." msgstr "Изменения были возвращены назад." msgid "Changes the administrator password for accessing the device" -msgstr "Изменить пароль администратора для доступа к устройству." +msgstr "Изменить пароль администратора для доступа к устройству" msgid "Channel" msgstr "Канал" @@ -666,7 +665,7 @@ msgid "Checksum" msgstr "Контрольная сумма" msgid "Choose mtdblock" -msgstr "" +msgstr "Выберите MTD раздел" msgid "" "Choose the firewall zone you want to assign to this interface. Select " @@ -704,6 +703,8 @@ msgid "" "Click \"Save mtdblock\" to download specified mtdblock file. (NOTE: THIS " "FEATURE IS FOR PROFESSIONALS! )" msgstr "" +"Нажмите \"Сохранить MTD раздел\" для скачивания образа указанного MTD " +"раздела (ВНИМАНИЕ: ДАННЫЙ ФУНКЦИОНАЛ ТОЛЬКО ДЛЯ ОПЫТНЫХ ПОЛЬЗОВАТЕЛЕЙ)" msgid "Client" msgstr "Клиент" @@ -716,7 +717,7 @@ msgid "" "persist connection" msgstr "" "Завершать неактивное соединение после заданного интервала (сек.), " -"используйте значение 0 для удержания неактивного соединения." +"используйте значение 0 для удержания неактивного соединения" msgid "Close list..." msgstr "Закрыть список..." @@ -727,6 +728,9 @@ msgstr "Сбор данных..." msgid "Command" msgstr "Команда" +msgid "Comment" +msgstr "Комментарий" + msgid "Common Configuration" msgstr "Общие настройки" @@ -808,7 +812,7 @@ msgid "Critical" msgstr "Критическая ситуация" msgid "Cron Log Level" -msgstr "Запись событий Cron" +msgstr "Запись событий cron" msgid "Custom Interface" msgstr "Пользовательский интерфейс" @@ -910,7 +914,7 @@ msgid "Default gateway" msgstr "Шлюз по умолчанию" msgid "Default is stateless + stateful" -msgstr "Значение по умолчанию — 'stateless + stateful'." +msgstr "Значение по умолчанию — 'stateless + stateful'" msgid "Default state" msgstr "Начальное состояние" @@ -955,7 +959,7 @@ msgid "Device is rebooting..." msgstr "Перезагрузка..." msgid "Device unreachable!" -msgstr "Устройство недоступно" +msgstr "Устройство недоступно!" msgid "Device unreachable! Still waiting for device..." msgstr "Устройство недоступно! Ожидание устройства..." @@ -985,6 +989,9 @@ msgstr "Отключить DNS настройки" msgid "Disable Encryption" msgstr "Отключить шифрование" +msgid "Disable Inactivity Polling" +msgstr "Отключить отслеживание неактивности клиентов" + msgid "Disable this network" msgstr "Отключить данную сеть" @@ -998,7 +1005,7 @@ msgid "Disassociate On Low Acknowledgement" msgstr "Не ассоциировать при низком подтверждении" msgid "Discard upstream RFC1918 responses" -msgstr "Отбрасывать ответы внешней сети RFC1918." +msgstr "Отбрасывать ответы внешней сети RFC1918" msgid "Disconnection attempt failed" msgstr "Ошибка попытки отключения" @@ -1033,15 +1040,15 @@ msgstr "" "\">NAT</abbr>" msgid "Do not cache negative replies, e.g. for not existing domains" -msgstr "Не кешировать отрицательные ответы, в т.ч. для несуществующих доменов." +msgstr "Не кешировать отрицательные ответы, в т.ч. для несуществующих доменов" msgid "Do not forward requests that cannot be answered by public name servers" msgstr "" "Не перенаправлять запросы, которые не могут быть обработаны публичными DNS-" -"серверами." +"серверами" msgid "Do not forward reverse lookups for local networks" -msgstr "Не перенаправлять обратные DNS-запросы для локальных сетей." +msgstr "Не перенаправлять обратные DNS-запросы для локальных сетей" msgid "Domain required" msgstr "Требуется домен" @@ -1057,7 +1064,7 @@ msgid "" "<abbr title=\"Domain Name System\">DNS</abbr>-Name" msgstr "" "Не перенаправлять <abbr title=\"Служба доменных имён\">DNS</abbr>-запросы " -"без <abbr title=\"Служба доменных имён\">DNS</abbr>-имени." +"без <abbr title=\"Служба доменных имён\">DNS</abbr>-имени" msgid "Down" msgstr "Вниз" @@ -1069,7 +1076,7 @@ msgid "Download backup" msgstr "Загрузить резервную копию" msgid "Download mtdblock" -msgstr "" +msgstr "Скачать MTD раздел" msgid "Downstream SNR offset" msgstr "SNR offset внутренней сети" @@ -1082,7 +1089,7 @@ msgid "" "and an integrated <abbr title=\"Secure Copy\">SCP</abbr> server" msgstr "" "Dropbear — это <abbr title=\"Secure Shell\">SSH</abbr>-сервер со встроенным " -"<abbr title=\"Secure Copy\">SCP</abbr>." +"<abbr title=\"Secure Copy\">SCP</abbr>" msgid "Dual-Stack Lite (RFC6333)" msgstr "Dual-Stack Lite (RFC6333)" @@ -1207,7 +1214,7 @@ msgstr "" "домену мобильности" msgid "Enables the Spanning Tree Protocol on this bridge" -msgstr "Включает Spanning Tree Protocol на этом мосту." +msgstr "Включает Spanning Tree Protocol на этом мосту" msgid "Encapsulation mode" msgstr "Режим инкапсуляции" @@ -1316,9 +1323,9 @@ msgid "" "Find all currently attached filesystems and swap and replace configuration " "with defaults based on what was detected" msgstr "" -"Найти все разделы включая swap и изменить config файл fstab с дефолтными " -"значениями всех обнаруженных разделов, т.е. выполнить команду 'block detect " -"> /etc/config/fstab'." +"Найти все разделы (включая swap) и записать в конфигурационный файл " +"информацию об обнаруженных разделах, т.е. выполнить команду 'block detect > /" +"etc/config/fstab'" msgid "Find and join network" msgstr "Найти и присоединиться к сети" @@ -1348,7 +1355,7 @@ msgid "Firmware Version" msgstr "Версия прошивки" msgid "Fixed source port for outbound DNS queries" -msgstr "Фиксированный порт для исходящих DNS-запросов." +msgstr "Фиксированный порт для исходящих DNS-запросов" msgid "Flash Firmware" msgstr "Установить прошивку" @@ -1451,7 +1458,7 @@ msgid "General Setup" msgstr "Основные настройки" msgid "General options for opkg" -msgstr "Основные настройки opkg." +msgstr "Основные настройки opkg" msgid "Generate Config" msgstr "Создать config" @@ -1505,7 +1512,7 @@ msgid "" "Here you can configure the basic aspects of your device like its hostname or " "the timezone." msgstr "" -"На странице вы можете настроить основные параметры вашего устройства, такие " +"Здесь вы можете настроить основные параметры вашего устройства, такие " "как имя хоста или часовой пояс." msgid "" @@ -1518,6 +1525,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "Скрыть <abbr title=\"Расширенный идентификатор сети\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "Скрыть пустые цепочки" + msgid "Host" msgstr "Хост" @@ -1615,10 +1625,10 @@ msgid "IPv6 Firewall" msgstr "Межсетевой экран IPv6" msgid "IPv6 Neighbours" -msgstr "IPv6 Neighbours" +msgstr "IPv6 соседи (neighbours)" msgid "IPv6 Settings" -msgstr "IPv6 Настройки" +msgstr "Настройки IPv6" msgid "IPv6 ULA-Prefix" msgstr "IPv6 ULA-Prefix" @@ -1681,20 +1691,20 @@ msgid "" "If specified, mount the device by its UUID instead of a fixed device node" msgstr "" "Если выбрано, монтировать устройство используя его UUID, а не фиксированный " -"файл устройства." +"файл устройства" msgid "" "If specified, mount the device by the partition label instead of a fixed " "device node" msgstr "" "Если выбрано, монтировать устройство используя название его раздела, а не " -"фиксированный файл устройства." +"фиксированный файл устройства" msgid "If unchecked, no default route is configured" -msgstr "Если не выбрано, то маршрут по умолчанию не настраивается." +msgstr "Если не выбрано, то маршрут по умолчанию не настраивается" msgid "If unchecked, the advertised DNS server addresses are ignored" -msgstr "Если не выбрано, то извещаемые адреса DNS серверов игнорируются." +msgstr "Если не выбрано, то извещаемые адреса DNS серверов игнорируются" msgid "" "If your physical memory is insufficient unused data can be temporarily " @@ -1755,7 +1765,7 @@ msgid "Install" msgstr "Установить" msgid "Install iputils-traceroute6 for IPv6 traceroute" -msgstr "Для IPv6, установите пакет iputils-traceroute6." +msgstr "Для поддержки IPv6, установите пакет iputils-traceroute6" msgid "Install package %q" msgstr "Установить пакет %q" @@ -1893,7 +1903,7 @@ msgid "Leasetime remaining" msgstr "Оставшееся время аренды" msgid "Leave empty to autodetect" -msgstr "Оставьте поле пустым для автоопределения." +msgstr "Оставьте поле пустым для автоопределения" msgid "Leave empty to use the current WAN address" msgstr "Оставьте пустым для использования текущего адреса WAN" @@ -1930,7 +1940,7 @@ msgid "" "requests to" msgstr "" "Список <abbr title=\"Domain Name System\">DNS</abbr>-серверов для " -"перенаправления запросов." +"перенаправления запросов" msgid "" "List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-" @@ -1959,13 +1969,13 @@ msgstr "" "R1KHs в MD, которые могут запросить PMK-R1 ключи." msgid "List of SSH key files for auth" -msgstr "Список файлов ключей SSH для авторизации." +msgstr "Список файлов ключей SSH для авторизации" msgid "List of domains to allow RFC1918 responses for" -msgstr "Список доменов, для которых разрешены ответы RFC1918." +msgstr "Список доменов, для которых разрешены ответы RFC1918" msgid "List of hosts that supply bogus NX domain results" -msgstr "Список хостов, поставляющих поддельные результаты домена NX." +msgstr "Список хостов, поставляющих поддельные результаты домена NX" msgid "Listen Interfaces" msgstr "Интерфейс для входящих соединений" @@ -1975,11 +1985,11 @@ msgstr "Порт для входящих соединений" msgid "Listen only on the given interface or, if unspecified, on all" msgstr "" -"Этот интерфейс работает с входящими соединениями или если интерфейс не " -"задан, значит все интерфейсы." +"Принимать подключения только на указанном интерфейсе или, если интерфейс не " +"задан, на всех интерфейсах" msgid "Listening port for inbound DNS queries" -msgstr "Порт для входящих DNS-запросов." +msgstr "Порт для входящих DNS-запросов" msgid "Load" msgstr "Загрузка" @@ -2020,12 +2030,12 @@ msgid "" msgstr "" "Согласно требованиям, имена соответствующие этому домену, никогда не " "передаются. И разрешаются только из файла DHCP (/etc/config/dhcp) или файла " -"хостов (/etc/hosts)." +"хостов (/etc/hosts)" msgid "Local domain suffix appended to DHCP names and hosts file entries" msgstr "" "Суффикс локального домена, который будет добавлен к DHCP-именам и записи " -"файла хостов (/etc/hosts)." +"файла хостов (/etc/hosts)" msgid "Local server" msgstr "Локальный сервер" @@ -2035,7 +2045,7 @@ msgid "" "available" msgstr "" "Локализировать имя хоста в зависимости от запрашиваемой подсети, если " -"доступно несколько IP-адресов." +"доступно несколько IP-адресов" msgid "Localise queries" msgstr "Локализовывать запросы" @@ -2110,14 +2120,17 @@ msgstr "Вручную" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "Max. Attainable Data Rate (ATTNDR)" +msgid "Maximum allowed Listen Interval" +msgstr "Максимально разрешенное значение интервала прослушивания клиента" + msgid "Maximum allowed number of active DHCP leases" -msgstr "Максимальное количество активных арендованных DHCP-адресов." +msgstr "Максимальное количество активных арендованных DHCP-адресов" msgid "Maximum allowed number of concurrent DNS queries" -msgstr "Максимально допустимое количество одновременных DNS-запросов." +msgstr "Максимально допустимое количество одновременных DNS-запросов" msgid "Maximum allowed size of EDNS.0 UDP packets" -msgstr "Максимально допустимый размер UDP пакетов-EDNS.0." +msgstr "Максимально допустимый размер UDP пакетов EDNS.0" msgid "Maximum amount of seconds to wait for the modem to become ready" msgstr "Максимальное время ожидания готовности модема (секунды)" @@ -2130,7 +2143,7 @@ msgstr "" "автоматического протокола/моста (br-, 6in4-, pppoe- etc.)" msgid "Maximum number of leased addresses." -msgstr "Максимальное количество арендованных адресов." +msgstr "Максимальное количество арендованных адресов" msgid "Mbit/s" msgstr "Мбит/с" @@ -2190,20 +2203,20 @@ msgid "Mount Points" msgstr "Монтирование разделов" msgid "Mount Points - Mount Entry" -msgstr "Точки монтирования — Настройка разделов" +msgstr "Точки монтирования — Настройка раздела" msgid "Mount Points - Swap Entry" -msgstr "Точки монтирования — Настройка Swap" +msgstr "Точки монтирования — Настройка раздела подкачки" msgid "" "Mount Points define at which point a memory device will be attached to the " "filesystem" msgstr "" "Точки монтирования определяют, куда в файловой системе будут смонтированы " -"разделы запоминающего устройства." +"разделы запоминающего устройства" msgid "Mount filesystems not specifically configured" -msgstr "Монтирование не подготовленного раздела." +msgstr "Монтирование несконфигурированного раздела" msgid "Mount options" msgstr "Опции монтирования" @@ -2212,7 +2225,7 @@ msgid "Mount point" msgstr "Точка монтирования" msgid "Mount swap not specifically configured" -msgstr "Монтирование не подготовленного swap-а." +msgstr "Монтирование несконфигурированного раздела подкачки" msgid "Mounted file systems" msgstr "Смонтированные разделы" @@ -2286,9 +2299,6 @@ msgstr "DHCP-сервер не настроен для этого интерфе msgid "No NAT-T" msgstr "Без NAT-T" -msgid "No chains in this table" -msgstr "Нет цепочек в этой таблице" - msgid "No files found" msgstr "Файлы не найдены" @@ -2313,7 +2323,7 @@ msgstr "Список пакетов не доступен" msgid "No password set!" msgstr "Пароль не установлен!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Нет правил в данной цепочке" msgid "No scan results available yet..." @@ -2366,6 +2376,9 @@ msgstr "" "Количество кэшированных DNS записей (максимум — 10000, 0 — отключить " "кэширование)" +msgid "Number of parallel threads used for compression" +msgstr "Количество параллельных потоков используемых для компрессии" + msgid "OK" msgstr "OK" @@ -2516,7 +2529,7 @@ msgid "Override TTL" msgstr "Отвергать TTL" msgid "Override default interface name" -msgstr "Назначить имя интерфейса по дефолту." +msgstr "Назначить имя интерфейса по умолчанию" msgid "Override the gateway in DHCP responses" msgstr "Назначить шлюз в ответах DHCP" @@ -2672,6 +2685,9 @@ msgstr "Пакетов" msgid "Please enter your username and password." msgstr "Введите логин и пароль." +msgid "Please update package lists first" +msgstr "Пожалуйста обновите список пакетов" + msgid "Policy" msgstr "Политика" @@ -2704,13 +2720,13 @@ msgid "" "ignore failures" msgstr "" "Предполагать, что узел недоступен после указанного количества ошибок " -"получения эхо-пакета LCP, введите '0' для игнорирования ошибок." +"получения эхо-пакета LCP, введите '0' для игнорирования ошибок" msgid "Prevent listening on these interfaces." msgstr "Запретить прослушивание этих интерфейсов." msgid "Prevents client-to-client communication" -msgstr "Не позволяет клиентам обмениваться друг с другом информацией." +msgstr "Не позволяет клиентам обмениваться друг с другом информацией" msgid "Private Key" msgstr "Приватный ключ" @@ -2815,7 +2831,7 @@ msgid "" "Configuration Protocol\">DHCP</abbr>-Server" msgstr "" "Читать <code>/etc/ethers</code> для настройки <abbr title=\"Протокол " -"динамической настройки узла\">DHCP</abbr>-сервера." +"динамической настройки узла\">DHCP</abbr>-сервера" msgid "" "Really delete this interface? The deletion cannot be undone! You might lose " @@ -2823,7 +2839,7 @@ msgid "" msgstr "" "Действительно удалить этот интерфейс? Удаление не может быть отменено! Вы " "можете потерять доступ к этому устройству, если вы подключены через данный " -"интерфейс." +"интерфейс" msgid "" "Really delete this wireless network? The deletion cannot be undone! You " @@ -2868,7 +2884,7 @@ msgstr "Перезагрузка..." msgid "Reboots the operating system of your device" msgstr "" -"Программная перезагрузка вашего устройства, т.е. выполнить команду 'reboot'." +"Программная перезагрузка вашего устройства, т.е. выполнить команду 'reboot'" msgid "Receive" msgstr "Приём" @@ -2926,7 +2942,7 @@ msgstr "Требовать" msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" msgstr "" -"Требуется для некоторых Интернет провайдеров, например глава с DOCSIS 3." +"Требуется для некоторых Интернет провайдеров, например использующих DOCSIS 3" msgid "Required. Base64-encoded private key for this interface." msgstr "Требовать Приватный ключ в кодировке Base64 для этого интерфейса." @@ -2955,7 +2971,7 @@ msgid "" "come from unsigned domains" msgstr "" "Требуется поддержка внешней сетью DNSSEC; убедитесь, что ответы " -"неподписанного домена — действительно поступают от неподписанных доменов." +"неподписанного домена действительно поступают от неподписанных доменов" msgid "Reset" msgstr "Сбросить" @@ -3033,8 +3049,11 @@ msgstr "" "Маршрутизация служит для определения через, какой интерфейс и шлюз можно " "достичь определенного хоста или сети." +msgid "Rule" +msgstr "Правило" + msgid "Run a filesystem check before mounting the device" -msgstr "Проверять файловую систему перед монтированием раздела." +msgstr "Проверять файловую систему перед монтированием раздела" msgid "Run filesystem check" msgstr "Проверить" @@ -3070,10 +3089,10 @@ msgid "Save & Apply" msgstr "Сохранить и применить" msgid "Save mtdblock" -msgstr "" +msgstr "Сохранить MTD раздел" msgid "Save mtdblock contents" -msgstr "" +msgstr "Сохранить содержимое MTD раздела" msgid "Scan" msgstr "Поиск" @@ -3091,7 +3110,7 @@ msgid "Section removed" msgstr "Строки удалены" msgid "See \"mount\" manpage for details" -msgstr "Для подробной информации обратитесь к справке по 'mount' (man mount)." +msgstr "Для подробной информации обратитесь к справке по 'mount' (man mount)" msgid "" "Select 'Force upgrade' to flash the image even if the image format check " @@ -3107,7 +3126,7 @@ msgid "" "conjunction with failure threshold" msgstr "" "Отправлять эхо-пакеты LCP с указанным интервалом (секунды), эффективно " -"только в сочетании с порогом ошибок." +"только в сочетании с порогом ошибок" msgid "Separate Clients" msgstr "Разделять клиентов" @@ -3154,6 +3173,9 @@ msgstr "Короткая преамбула" msgid "Show current backup file list" msgstr "Показать текущий список файлов резервной копии" +msgid "Show empty chains" +msgstr "Показать пустые цепочки" + msgid "Shutdown this interface" msgstr "Выключить этот интерфейс" @@ -3175,6 +3197,9 @@ msgstr "Размер (.ipk)" msgid "Size of DNS query cache" msgstr "Размер кэша DNS запроса" +msgid "Size of the ZRam device in megabytes" +msgstr "Размер ZRam в мегабайтах" + msgid "Skip" msgstr "Пропустить" @@ -3215,23 +3240,23 @@ msgid "Source" msgstr "Источник" msgid "Specifies the directory the device is attached to" -msgstr "Папка, к которой монтируется раздел устройства." +msgstr "Папка, к которой монтируется раздел устройства" msgid "Specifies the listening port of this <em>Dropbear</em> instance" -msgstr "Порт данного процесса <em>Dropbear</em>." +msgstr "Порт данного процесса <em>Dropbear</em>" msgid "" "Specifies the maximum amount of failed ARP requests until hosts are presumed " "to be dead" msgstr "" "Максимальное количество неудачных запросов ARP, после которого узлы " -"считаются отключенными." +"считаются отключенными" msgid "" "Specifies the maximum amount of seconds after which hosts are presumed to be " "dead" msgstr "" -"Максимальное количество секунд, после которого узлы считаются отключёнными." +"Максимальное количество секунд, после которого узлы считаются отключёнными" msgid "Specify a TOS (Type of Service)." msgstr "Укажите TOS (Тип обслуживания)." @@ -3292,6 +3317,9 @@ msgstr "" "имён DHCP-клиентам. Постоянная аренда также необходима для статических " "интерфейсов, в которых обслуживаются только клиенты с присвоенными адресами." +msgid "Station inactivity limit" +msgstr "Максимально допустимое время бездействия клиента" + msgid "Status" msgstr "Состояние" @@ -3308,10 +3336,10 @@ msgid "Suppress logging" msgstr "Подавить логирование" msgid "Suppress logging of the routine operation of these protocols" -msgstr "Подавить логирование стандартной работы этих протоколов." +msgstr "Подавить логирование стандартной работы этих протоколов" msgid "Swap" -msgstr "Раздел подкачки (Swap)" +msgstr "Раздел подкачки (swap)" msgid "Swap Entry" msgstr "Настройка config файла fstab (/etc/config/fstab)" @@ -3438,10 +3466,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" "Устройство недоступно в течение %d секунд после применения изменений. Это " "привело к откату конфигурации из соображений безопасности. Если вы считаете, " @@ -3475,13 +3502,13 @@ msgstr "" "начать процедуру обновления прошивки." msgid "The following changes have been reverted" -msgstr "Ваши настройки были отвергнуты." +msgstr "Следующие настройки были отвергнуты" msgid "The following rules are currently active on this system." msgstr "На данном устройстве активны следующие правила." msgid "The given network name is not unique" -msgstr "Заданное имя сети не является уникальным." +msgstr "Заданное имя сети не является уникальным" msgid "" "The hardware is not multi-SSID capable and the existing configuration will " @@ -3537,8 +3564,8 @@ msgid "" msgstr "" "Сейчас система перепрошивается.<br /> НЕ ОТКЛЮЧАЙТЕ ПИТАНИЕ УСТРОЙСТВА!<br /" "> Подождите несколько минут, прежде чем попытаться соединиться. Возможно, " -"потребуется обновить адрес компьютера, чтобы снова подключиться к устройству, " -"в зависимости от настроек." +"потребуется обновить адрес компьютера, чтобы снова подключиться к " +"устройству, в зависимости от настроек." msgid "" "The uploaded image file does not contain a supported format. Make sure that " @@ -3564,7 +3591,7 @@ msgid "" "\"Physical Settings\" tab" msgstr "" "Устройство не назначено. Назначьте сетевое устройство на странице 'Настройки " -"канала'." +"канала'" msgid "" "There is no password set on this router. Please configure a root password to " @@ -3600,7 +3627,7 @@ msgid "" "password if no update key has been configured" msgstr "" "Это либо \"Update Key\", настроенный для туннеля, либо пароль учетной " -"записи, если ключ обновления не был настроен." +"записи, если ключ обновления не был настроен" msgid "" "This is the content of /etc/rc.local. Insert your own commands here (in " @@ -3614,22 +3641,22 @@ msgid "" "ends with <code>...:2/64</code>" msgstr "" "Это локальный адрес, назначенный туннельным брокером, обычно заканчивается " -"на <code>...:2/64</code>." +"на <code>...:2/64</code>" msgid "" "This is the only <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</" "abbr> in the local network" msgstr "" "Это единственный <abbr title=\"Протокол динамической настройки узла\">DHCP</" -"abbr>-сервер в локальной сети." +"abbr>-сервер в локальной сети" msgid "This is the plain username for logging into the account" -msgstr "Это просто имя пользователя, для входа в учетную запись." +msgstr "Это просто имя пользователя, для входа в учетную запись" msgid "" "This is the prefix routed to you by the tunnel broker for use by clients" msgstr "" -"Это префикс, направлен вам брокером туннелей для использования клиентами." +"Это префикс, направлен вам брокером туннелей для использования клиентами" msgid "This is the system crontab in which scheduled tasks can be defined." msgstr "" @@ -3638,7 +3665,7 @@ msgstr "" msgid "" "This is usually the address of the nearest PoP operated by the tunnel broker" -msgstr "Это адрес ближайшей точки присутствия туннельного брокера." +msgstr "Это адрес ближайшей точки присутствия туннельного брокера" msgid "" "This list gives an overview over currently running system processes and " @@ -3658,6 +3685,9 @@ msgstr "Синхронизация времени" msgid "Time Synchronization is not configured yet." msgstr "Синхронизация времени ещё не настроена." +msgid "Time interval for rekeying GTK" +msgstr "Интервал регенерации ключей GTK" + msgid "Timezone" msgstr "Часовой пояс" @@ -3969,7 +3999,7 @@ msgid "Waiting for command to complete..." msgstr "Ожидание завершения выполнения команды..." msgid "Waiting for configuration to be applied… %ds" -msgstr "Ожидание применения конфигурации... %d сек." +msgstr "Ожидание применения конфигурации... %d сек" msgid "Waiting for device..." msgstr "Ожидание подключения устройства..." @@ -3985,7 +4015,9 @@ msgstr "" msgid "" "When using a PSK, the PMK can be generated locally without inter AP " "communications" -msgstr "При использовании PSK, PMK может быть создан локально, без AP в связи." +msgstr "" +"При использовании PSK, PMK может быть создан локально без коммуникации " +"AP между собой" msgid "Width" msgstr "Ширина" @@ -4024,7 +4056,7 @@ msgid "Wireless network is enabled" msgstr "Беспроводная сеть включена" msgid "Write received DNS requests to syslog" -msgstr "Записывать полученные DNS-запросы в системный журнал." +msgstr "Записывать полученные DNS-запросы в системный журнал" msgid "Write system log to file" msgstr "Записывать системные события в файл" @@ -4054,6 +4086,18 @@ msgstr "" "Обновите его до версии 7 или используйте другой браузер, например Firefox, " "Opera или Safari." +msgid "ZRam Compression Algorithm" +msgstr "Алгоритм компрессии ZRam" + +msgid "ZRam Compression Streams" +msgstr "Потоки компрессии ZRam" + +msgid "ZRam Settings" +msgstr "Настройки ZRam" + +msgid "ZRam Size" +msgstr "Размер ZRam" + msgid "any" msgstr "любой" @@ -4073,7 +4117,7 @@ msgid "create:" msgstr "создать:" msgid "creates a bridge over specified interface(s)" -msgstr "Создаёт мост для выбранных сетевых интерфейсов." +msgstr "Создаёт мост для выбранных сетевых интерфейсов" msgid "dB" msgstr "дБ" @@ -4095,7 +4139,7 @@ msgid "" "abbr>-leases will be stored" msgstr "" "Файл, где хранятся арендованные <abbr title=\"Протокол динамической " -"настройки узла\">DHCP</abbr>-адреса." +"настройки узла\">DHCP</abbr>-адреса" msgid "forward" msgstr "перенаправить" @@ -4128,7 +4172,7 @@ msgid "kbit/s" msgstr "кбит/с" msgid "local <abbr title=\"Domain Name System\">DNS</abbr> file" -msgstr "Локальный <abbr title=\"Служба доменных имён\">DNS</abbr>-файл." +msgstr "Локальный <abbr title=\"Служба доменных имён\">DNS</abbr>-файл" msgid "minutes" msgstr "минут(ы)" @@ -4172,6 +4216,9 @@ msgstr "режим передачи" msgid "routed" msgstr "маршрутизируемый" +msgid "sec" +msgstr "секунды" + msgid "server mode" msgstr "режим сервера" @@ -4210,85 +4257,3 @@ msgstr "да" msgid "« Back" msgstr "« Назад" - -#~ msgid "Configuration files will be kept." -#~ msgstr "Config файлы будут сохранены." - -#~ msgid "Note: Configuration files will be erased." -#~ msgstr "Внимание: config файлы будут удалены." - -#~ msgid "<abbr title='Pairwise: %s / Group: %s'>%s - %s</abbr>" -#~ msgstr "<abbr title='Парный: %s / Групповой: %s'>%s - %s</abbr>" - -#~ msgid "Activate this network" -#~ msgstr "Активировать эту сеть" - -#~ msgid "Hermes 802.11b Wireless Controller" -#~ msgstr "Беспроводной 802.11b контроллер Hermes" - -#~ msgid "Interface is shutting down..." -#~ msgstr "Интерфейс отключается..." - -#~ msgid "Interface reconnected" -#~ msgstr "Интерфейс переподключен" - -#~ msgid "Interface shut down" -#~ msgstr "Интерфейс отключен" - -#~ msgid "Prism2/2.5/3 802.11b Wireless Controller" -#~ msgstr "Беспроводной 802.11b контроллер Prism2/2.5/3" - -#~ msgid "RaLink 802.11%s Wireless Controller" -#~ msgstr "Беспроводной 802.11%s контроллер RaLink" - -#~ msgid "" -#~ "Really shutdown interface \"%s\"? You might lose access to this device if " -#~ "you are connected via this interface." -#~ msgstr "" -#~ "Действительно отключить интерфейс \"%s\"? Вы можете потерять доступ к " -#~ "этому устройству, если вы подключены через этот интерфейс." - -#~ msgid "Reconnecting interface" -#~ msgstr "Интерфейс переподключается" - -#~ msgid "Shutdown this network" -#~ msgstr "Выключить эту сеть" - -#~ msgid "Wireless restarted" -#~ msgstr "Беспроводная сеть перезапущена" - -#~ msgid "Wireless shut down" -#~ msgstr "Выключение беспроводной сети" - -#~ msgid "DHCP Leases" -#~ msgstr "Аренды DHCP" - -#~ msgid "DHCPv6 Leases" -#~ msgstr "Аренды DHCPv6" - -#~ msgid "" -#~ "Really delete this interface? The deletion cannot be undone! You might " -#~ "lose access to this device if you are connected via this interface." -#~ msgstr "" -#~ "Действительно удалить этот интерфейс? Удаление не может быть отменено!" -#~ "\\nВы можете потерять доступ к этому устройству, если вы подключены через " -#~ "этот интерфейс." - -#~ msgid "" -#~ "Really shut down network? You might lose access to this device if you are " -#~ "connected via this interface." -#~ msgstr "" -#~ "Действительно отключить сеть? Вы можете потерять доступ к этому " -#~ "устройству, если вы подключены через этот интерфейс." - -#~ msgid "Sort" -#~ msgstr "Сортировка" - -#~ msgid "help" -#~ msgstr "помощь" - -#~ msgid "IPv4 WAN Status" -#~ msgstr "Состояние IPv4 WAN" - -#~ msgid "IPv6 WAN Status" -#~ msgstr "Состояние IPv6 WAN" diff --git a/modules/luci-base/po/sk/base.po b/modules/luci-base/po/sk/base.po index 7a872fed3d..c944c85ec9 100644 --- a/modules/luci-base/po/sk/base.po +++ b/modules/luci-base/po/sk/base.po @@ -386,10 +386,10 @@ msgstr "" msgid "Any zone" msgstr "" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -659,6 +659,9 @@ msgstr "" msgid "Command" msgstr "" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "" @@ -899,6 +902,9 @@ msgstr "" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1401,6 +1407,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -1953,6 +1962,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "" @@ -2125,9 +2137,6 @@ msgstr "" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "" - msgid "No files found" msgstr "" @@ -2152,7 +2161,7 @@ msgstr "" msgid "No password set!" msgstr "" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "" msgid "No scan results available yet..." @@ -2203,6 +2212,9 @@ msgstr "" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "" @@ -2487,6 +2499,9 @@ msgstr "" msgid "Please enter your username and password." msgstr "" +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "" @@ -2821,6 +2836,9 @@ msgid "" "can be reached." msgstr "" +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "" @@ -2936,6 +2954,9 @@ msgstr "" msgid "Show current backup file list" msgstr "" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "" @@ -2957,6 +2978,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "" @@ -3061,6 +3085,9 @@ msgid "" "configurations where only hosts with a corresponding lease are served." msgstr "" +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "" @@ -3193,10 +3220,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3361,6 +3387,9 @@ msgstr "" msgid "Time Synchronization is not configured yet." msgstr "" +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "" @@ -3727,6 +3756,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "" @@ -3843,6 +3884,9 @@ msgstr "" msgid "routed" msgstr "" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" diff --git a/modules/luci-base/po/sv/base.po b/modules/luci-base/po/sv/base.po index fb0aaaa9a8..53f929c3f9 100644 --- a/modules/luci-base/po/sv/base.po +++ b/modules/luci-base/po/sv/base.po @@ -397,10 +397,10 @@ msgstr "Konfiguration av antenn" msgid "Any zone" msgstr "Någon zon" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -673,6 +673,9 @@ msgstr "Samlar in data..." msgid "Command" msgstr "Kommando" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "Vanlig konfiguration" @@ -915,6 +918,9 @@ msgstr "" msgid "Disable Encryption" msgstr "Inaktivera kryptering" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1421,6 +1427,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "Göm <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "Värd" @@ -1974,6 +1983,9 @@ msgstr "Manuell" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "" @@ -2146,9 +2158,6 @@ msgstr "Det finns ingen DHCP-server inställd för det här gränssnittet" msgid "No NAT-T" msgstr "Ingen NAT-T" -msgid "No chains in this table" -msgstr "Inga kedjor i den här tabellen" - msgid "No files found" msgstr "Inga filer hittades" @@ -2173,7 +2182,7 @@ msgstr "Ingen paketlista tillgänglig" msgid "No password set!" msgstr "Inget lösenord inställt!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Inga regler i den här kedjan" msgid "No scan results available yet..." @@ -2224,6 +2233,9 @@ msgstr "Nslookup" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK" @@ -2508,6 +2520,9 @@ msgstr "Pkt." msgid "Please enter your username and password." msgstr "Vänligen ange ditt användarnamn och lösenord." +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "" @@ -2844,6 +2859,9 @@ msgid "" "can be reached." msgstr "" +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "Kör en filsystemskontroll innan enheten monteras" @@ -2959,6 +2977,9 @@ msgstr "" msgid "Show current backup file list" msgstr "" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "Stäng ner det här gränssnittet" @@ -2980,6 +3001,9 @@ msgstr "Storlek (.ipk)" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Hoppa över" @@ -3084,6 +3108,9 @@ msgid "" "configurations where only hosts with a corresponding lease are served." msgstr "" +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Status" @@ -3216,10 +3243,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3386,6 +3412,9 @@ msgstr "Synkronisering av tid" msgid "Time Synchronization is not configured yet." msgstr "Synkronisering av tid är inte inställd än." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Tidszon" @@ -3760,6 +3789,18 @@ msgstr "" "Vänligen uppgradera den till minst version 7 eller använd en annan " "webbläsare till exempel Firefox, Opera eller Safari." +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "något" @@ -3876,6 +3917,9 @@ msgstr "relä-läge" msgid "routed" msgstr "" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "server-läge" @@ -3915,6 +3959,9 @@ msgstr "ja" msgid "« Back" msgstr "« Bakåt" +#~ msgid "No chains in this table" +#~ msgstr "Inga kedjor i den här tabellen" + #~ msgid "Configuration files will be kept." #~ msgstr "Konfigurationsfiler kommer att behållas." diff --git a/modules/luci-base/po/templates/base.pot b/modules/luci-base/po/templates/base.pot index cb1008a8e0..3424eee506 100644 --- a/modules/luci-base/po/templates/base.pot +++ b/modules/luci-base/po/templates/base.pot @@ -379,10 +379,10 @@ msgstr "" msgid "Any zone" msgstr "" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -652,6 +652,9 @@ msgstr "" msgid "Command" msgstr "" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "" @@ -892,6 +895,9 @@ msgstr "" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1394,6 +1400,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -1946,6 +1955,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "" @@ -2118,9 +2130,6 @@ msgstr "" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "" - msgid "No files found" msgstr "" @@ -2145,7 +2154,7 @@ msgstr "" msgid "No password set!" msgstr "" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "" msgid "No scan results available yet..." @@ -2196,6 +2205,9 @@ msgstr "" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "" @@ -2480,6 +2492,9 @@ msgstr "" msgid "Please enter your username and password." msgstr "" +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "" @@ -2814,6 +2829,9 @@ msgid "" "can be reached." msgstr "" +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "" @@ -2929,6 +2947,9 @@ msgstr "" msgid "Show current backup file list" msgstr "" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "" @@ -2950,6 +2971,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "" @@ -3054,6 +3078,9 @@ msgid "" "configurations where only hosts with a corresponding lease are served." msgstr "" +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "" @@ -3186,10 +3213,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3354,6 +3380,9 @@ msgstr "" msgid "Time Synchronization is not configured yet." msgstr "" +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "" @@ -3720,6 +3749,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "" @@ -3836,6 +3877,9 @@ msgstr "" msgid "routed" msgstr "" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" diff --git a/modules/luci-base/po/tr/base.po b/modules/luci-base/po/tr/base.po index cd3688ba56..769619f5d5 100644 --- a/modules/luci-base/po/tr/base.po +++ b/modules/luci-base/po/tr/base.po @@ -400,10 +400,10 @@ msgstr "Anten Yapılandırması" msgid "Any zone" msgstr "" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -675,6 +675,9 @@ msgstr "" msgid "Command" msgstr "" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "" @@ -917,6 +920,9 @@ msgstr "DNS kurulumunu devre dışı" msgid "Disable Encryption" msgstr "Şifrelemeyi Devre Dışı" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "Ağ devre dışı" @@ -1419,6 +1425,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -1971,6 +1980,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "" @@ -2143,9 +2155,6 @@ msgstr "" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "" - msgid "No files found" msgstr "" @@ -2170,7 +2179,7 @@ msgstr "" msgid "No password set!" msgstr "" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "" msgid "No scan results available yet..." @@ -2221,6 +2230,9 @@ msgstr "" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "" @@ -2505,6 +2517,9 @@ msgstr "" msgid "Please enter your username and password." msgstr "" +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "" @@ -2839,6 +2854,9 @@ msgid "" "can be reached." msgstr "" +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "Cihazı bağlamadan önce bir dosya sistemi kontrolü yapın" @@ -2954,6 +2972,9 @@ msgstr "" msgid "Show current backup file list" msgstr "" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "" @@ -2975,6 +2996,9 @@ msgstr "Boyut (.ipk)" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "Atla" @@ -3079,6 +3103,9 @@ msgid "" "configurations where only hosts with a corresponding lease are served." msgstr "" +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Durum" @@ -3211,10 +3238,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3379,6 +3405,9 @@ msgstr "" msgid "Time Synchronization is not configured yet." msgstr "" +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "" @@ -3747,6 +3776,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "herhangi" @@ -3863,6 +3904,9 @@ msgstr "anahtarlama modu" msgid "routed" msgstr "yönlendirildi" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "sunucu modu" diff --git a/modules/luci-base/po/uk/base.po b/modules/luci-base/po/uk/base.po index 2f068298b4..fc0709605c 100644 --- a/modules/luci-base/po/uk/base.po +++ b/modules/luci-base/po/uk/base.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"PO-Revision-Date: 2018-09-20 02:55+0300\n" +"PO-Revision-Date: 2018-10-14 18:10+0300\n" "Last-Translator: Yurii <yuripet@gmail.com>\n" "Language-Team: none\n" "Language: uk\n" @@ -436,12 +436,12 @@ msgstr "Конфигурація антени" msgid "Any zone" msgstr "Будь-яка зона" +msgid "Apply anyway" +msgstr "Все одно застосувати" + msgid "Apply request failed with status <code>%h</code>" msgstr "Сталася помилка запиту на застосування зі статусом <code>%h</code>" -msgid "Apply unchecked" -msgstr "Застосування не позначено" - msgid "Architecture" msgstr "Архітектура" @@ -734,6 +734,9 @@ msgstr "Збирання даних..." msgid "Command" msgstr "Команда" +msgid "Comment" +msgstr "Примітка" + msgid "Common Configuration" msgstr "Загальна конфігурація" @@ -995,6 +998,9 @@ msgstr "Вимкнути налаштування DNS" msgid "Disable Encryption" msgstr "Вимкнути шифрування" +msgid "Disable Inactivity Polling" +msgstr "Вимкнути опитування неактивності" + msgid "Disable this network" msgstr "Вимкнути цю мережу" @@ -1533,6 +1539,9 @@ msgstr "" "Приховати <abbr title=\"Extended Service Set Identifier — ідентифікатор " "розширеної служби послуг\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "Приховати порожні ланцюжки" + msgid "Host" msgstr "Вузол" @@ -2136,6 +2145,9 @@ msgstr "Вручну" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "Макс. досяжна швидкість передачі даних (ATTNDR)" +msgid "Maximum allowed Listen Interval" +msgstr "Максимальний дозволений інтервал прослуховування" + msgid "Maximum allowed number of active DHCP leases" msgstr "Максимально допустима кількість активних оренд DHCP" @@ -2312,9 +2324,6 @@ msgstr "Немає DHCP-сервера, налаштованого для цьо msgid "No NAT-T" msgstr "Немає NAT-T" -msgid "No chains in this table" -msgstr "У цій таблиці немає ланцюжків" - msgid "No files found" msgstr "Файли не знайдено" @@ -2339,8 +2348,8 @@ msgstr "Немає доступних списків пакетів" msgid "No password set!" msgstr "Пароль не встановлено!" -msgid "No rules in this chain" -msgstr "У цьму ланцюжку нема правил" +msgid "No rules in this chain." +msgstr "У цьму ланцюжку нема правил." msgid "No scan results available yet..." msgstr "Результати сканування наразі недоступні" @@ -2390,6 +2399,9 @@ msgstr "DNS-запит" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "Кількість кешованих записів DNS (макс. - 10000, 0 - без кешування)" +msgid "Number of parallel threads used for compression" +msgstr "Кількість паралельних потоків, що використовуються для стиснення" + msgid "OK" msgstr "OK" @@ -2700,6 +2712,9 @@ msgstr "пакетів" msgid "Please enter your username and password." msgstr "Введіть ім’я користувача і пароль." +msgid "Please update package lists first" +msgstr "Спочатку оновіть списки пакетів" + msgid "Policy" msgstr "Політика" @@ -3052,6 +3067,9 @@ msgstr "" "Маршрути визначають через який інтерфейс і шлюз можна досягнути певного " "вузла або мережі." +msgid "Rule" +msgstr "Правило" + msgid "Run a filesystem check before mounting the device" msgstr "Виконати перевірку файлової системи перед монтуванням пристрою" @@ -3174,6 +3192,9 @@ msgstr "Коротка преамбула" msgid "Show current backup file list" msgstr "Показати поточний список файлів резервного копіювання" +msgid "Show empty chains" +msgstr "Показати порожні ланцюжки" + msgid "Shutdown this interface" msgstr "Вимкнути цей інтерфейс" @@ -3195,6 +3216,9 @@ msgstr "Розмір (.ipk)" msgid "Size of DNS query cache" msgstr "Розмір кешу запитів DNS" +msgid "Size of the ZRam device in megabytes" +msgstr "Розмір пристрою ZRam у мегабайтах" + msgid "Skip" msgstr "Пропустити" @@ -3310,6 +3334,9 @@ msgstr "" "конфігурацій інтерфейсів, коли обслуговуються тільки вузли з відповідною " "орендою." +msgid "Station inactivity limit" +msgstr "Обмеження бездіяльності станції" + msgid "Status" msgstr "Стан" @@ -3457,15 +3484,14 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" "Пристрій недосяжний протягом %d секунд після застосування очікуючих змін, що " "призвело до відкочування конфигурації з міркувань безпеки. Проте, якщо ви " -"впевнені, що зміни конфігурації є правильними, застосуйте неперевірену " -"конфігурацію. Крім того, ви можете відхилити це попередження та " +"впевнені, що зміни конфігурації є правильними, все одно продовжіть " +"застосування. Крім того, ви можете відхилити це попередження та " "відредагувати зміни, перш ніж намагатись застосувати їх знову, або ж " "скасувати всі очікуючі зміни, щоб зберегти поточну робочу конфігурацію." @@ -3681,6 +3707,9 @@ msgstr "Синхронізація часу" msgid "Time Synchronization is not configured yet." msgstr "Синхронізацію часу не налаштовано." +msgid "Time interval for rekeying GTK" +msgstr "Інтервал часу для зміни ключа GTK" + msgid "Timezone" msgstr "Часовий пояс" @@ -4074,6 +4103,18 @@ msgstr "" "Поновіть його, принаймні, до версії 7 або скористайтесь іншим браузером, " "таким як Firefox, Opera або Safari." +msgid "ZRam Compression Algorithm" +msgstr "Алгоритм стиснення ZRam" + +msgid "ZRam Compression Streams" +msgstr "Потоки стиснення ZRam" + +msgid "ZRam Settings" +msgstr "Налаштування ZRam" + +msgid "ZRam Size" +msgstr "Розмір ZRam" + msgid "any" msgstr "будь-який" @@ -4194,6 +4235,9 @@ msgstr "режим реле" msgid "routed" msgstr "спрямовано" +msgid "sec" +msgstr "с" + msgid "server mode" msgstr "режим сервера" diff --git a/modules/luci-base/po/vi/base.po b/modules/luci-base/po/vi/base.po index 217ca98fbd..83566f27b1 100644 --- a/modules/luci-base/po/vi/base.po +++ b/modules/luci-base/po/vi/base.po @@ -393,10 +393,10 @@ msgstr "" msgid "Any zone" msgstr "" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -666,6 +666,9 @@ msgstr "" msgid "Command" msgstr "Lệnh" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "" @@ -908,6 +911,9 @@ msgstr "" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1421,6 +1427,9 @@ msgstr "" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "Giấu <abbr title=\"Chế độ mở rộng đặt Identifier\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -1981,6 +1990,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "" @@ -2155,9 +2167,6 @@ msgstr "" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "Không có chuỗi trong bảng này" - msgid "No files found" msgstr "" @@ -2182,7 +2191,7 @@ msgstr "" msgid "No password set!" msgstr "" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "Không có quy luật trong chuỗi này" msgid "No scan results available yet..." @@ -2233,6 +2242,9 @@ msgstr "" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "OK " @@ -2523,6 +2535,9 @@ msgstr "" msgid "Please enter your username and password." msgstr "Nhập tên và mật mã" +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "Chính sách" @@ -2861,6 +2876,9 @@ msgstr "" "Routes chỉ định trên giao diện và cổng một host nhất định hay network được " "tiếp cận." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "" @@ -2976,6 +2994,9 @@ msgstr "" msgid "Show current backup file list" msgstr "" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "" @@ -2997,6 +3018,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "" @@ -3101,6 +3125,9 @@ msgid "" "configurations where only hosts with a corresponding lease are served." msgstr "" +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "Tình trạng" @@ -3233,10 +3260,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3416,6 +3442,9 @@ msgstr "" msgid "Time Synchronization is not configured yet." msgstr "" +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "Múi giờ " @@ -3786,6 +3815,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "" @@ -3904,6 +3945,9 @@ msgstr "" msgid "routed" msgstr "" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" @@ -3943,6 +3987,9 @@ msgstr "" msgid "« Back" msgstr "" +#~ msgid "No chains in this table" +#~ msgstr "Không có chuỗi trong bảng này" + #~ msgid "Backup / Restore" #~ msgstr "Backup/ Restore" diff --git a/modules/luci-base/po/zh-cn/base.po b/modules/luci-base/po/zh-cn/base.po index 2c7bdcc195..a0534db70e 100644 --- a/modules/luci-base/po/zh-cn/base.po +++ b/modules/luci-base/po/zh-cn/base.po @@ -8,7 +8,7 @@ msgstr "" "Language-Team: <debian-l10n-chinese@lists.debian.org>\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"PO-Revision-Date: 2018-08-07 14:59+0800\n" +"PO-Revision-Date: 2018-08-18 12:39+0800\n" "X-Generator: Gtranslator 2.91.7\n" msgid "%.1f dB" @@ -239,7 +239,7 @@ msgid "Add local domain suffix to names served from hosts files" msgstr "添加本地域名后缀到 HOSTS 文件中的域名" msgid "Add new interface..." -msgstr "添加新接口..." +msgstr "添加新接口…" msgid "Additional Hosts files" msgstr "额外的 HOSTS 文件" @@ -400,12 +400,12 @@ msgstr "天线配置" msgid "Any zone" msgstr "任意区域" +msgid "Apply anyway" +msgstr "强制应用" + msgid "Apply request failed with status <code>%h</code>" msgstr "应用请求失败,状态 <code>%h</code>" -msgid "Apply unchecked" -msgstr "强制应用" - msgid "Architecture" msgstr "架构" @@ -414,7 +414,7 @@ msgid "" msgstr "将每个公共 IPv6 前缀的给定长度部分分配给此接口" msgid "Assign interfaces..." -msgstr "分配接口..." +msgstr "分配接口…" msgid "" "Assign prefix parts using this hexadecimal subprefix ID for this interface." @@ -677,6 +677,9 @@ msgstr "正在收集数据…" msgid "Command" msgstr "命令" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "一般配置" @@ -927,6 +930,9 @@ msgstr "停用 DNS 设定" msgid "Disable Encryption" msgstr "禁用加密" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "禁用此网络" @@ -998,7 +1004,7 @@ msgstr "" "不转发没有 <abbr title=\"Domain Name System\">DNS</abbr> 名称的解析请求" msgid "Down" -msgstr "向下" +msgstr "下移" msgid "Download and install package" msgstr "下载并安装软件包" @@ -1023,7 +1029,7 @@ msgstr "" "\"Secure Copy\">SCP</abbr> 服务" msgid "Dual-Stack Lite (RFC6333)" -msgstr "Dual-Stack Lite (RFC6333)" +msgstr "轻型双栈(RFC6333)" msgid "Dynamic <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>" msgstr "动态 <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>" @@ -1038,7 +1044,7 @@ msgstr "" "为所有客户端提供 DHCP 服务。如果禁用,将只对具有静态租约的客户提供服务。" msgid "EA-bits length" -msgstr "EA-bits 长度" +msgstr "EA-位长" msgid "EAP-Method" msgstr "EAP 类型" @@ -1439,6 +1445,9 @@ msgstr "请在此处粘贴 SSH 公钥,每行一个,用于 SSH 公钥认证 msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "隐藏 <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "主机" @@ -2005,6 +2014,9 @@ msgstr "手动" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "最大可达数据速率(ATTNDR)" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "允许的最大 DHCP 租用数" @@ -2179,9 +2191,6 @@ msgstr "本接口未配置 DHCP 服务器" msgid "No NAT-T" msgstr "无 NAT-T" -msgid "No chains in this table" -msgstr "本表中没有链" - msgid "No files found" msgstr "未找到文件" @@ -2206,7 +2215,7 @@ msgstr "无可用软件列表" msgid "No password set!" msgstr "未设置密码!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "本链没有规则" msgid "No scan results available yet..." @@ -2257,6 +2266,9 @@ msgstr "Nslookup" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "缓存的 DNS 条目数量(最大 10000,0 表示不缓存)" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "确认" @@ -2333,9 +2345,9 @@ msgid "" "server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " "for the interface." msgstr "" -"可选,允许的值:'eui64'、'random' 和其他固定值(例如:'::1' 或 '::1:2')。当" -"从授权服务器获取到 IPv6 前缀(如 'a:b:c:d::'),使用后缀(如 '::1')合成 " -"IPv6 地址('a:b:c:d::1')分配给此接口。" +"可选,允许的值:“eui64”、“random”和其他固定值(例如:“::1”或“::1:2”)。当从授" +"权服务器获取到 IPv6 前缀(如“a:b:c:d::”),使用后缀(如 “::1”)合成 IPv6 地址" +"(“a:b:c:d::1”)分配给此接口。" msgid "" "Optional. Base64-encoded preshared key. Adds in an additional layer of " @@ -2456,7 +2468,7 @@ msgid "PSID offset" msgstr "PSID 偏移" msgid "PSID-bits length" -msgstr "PSID-bits 长度" +msgstr "PSID-位长" msgid "PTM/EFM (Packet Transfer Mode)" msgstr "PTM/EFM(分组传输模式)" @@ -2551,6 +2563,9 @@ msgstr "数据包" msgid "Please enter your username and password." msgstr "请输入用户名和密码。" +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "策略" @@ -2745,7 +2760,7 @@ msgid "Receiver Antenna" msgstr "接收天线" msgid "Recommended. IP addresses of the WireGuard interface." -msgstr "推荐,Wire Guard 接口的 IP 地址。" +msgstr "推荐,WireGuard 接口的 IP 地址。" msgid "Reconnect this interface" msgstr "重连此接口" @@ -2895,6 +2910,9 @@ msgid "" "can be reached." msgstr "路由表描述了数据包的可达路径。" +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "挂载设备前运行文件系统检查" @@ -2953,7 +2971,7 @@ msgid "Section removed" msgstr "移除的节点" msgid "See \"mount\" manpage for details" -msgstr "详参 \"mount\" 联机帮助" +msgstr "详参“mount”联机帮助" msgid "" "Select 'Force upgrade' to flash the image even if the image format check " @@ -3012,6 +3030,9 @@ msgstr "Short Preamble" msgid "Show current backup file list" msgstr "显示当前备份文件列表" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "关闭此接口" @@ -3033,6 +3054,9 @@ msgstr "大小(.ipk)" msgid "Size of DNS query cache" msgstr "DNS 查询缓存的大小" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "跳过" @@ -3141,6 +3165,9 @@ msgstr "" "静态租约用于给 DHCP 客户端分配固定的 IP 地址和主机标识。只有指定的主机才能连" "接,并且接口须为非动态配置。" +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "状态" @@ -3278,10 +3305,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" "在应用挂起的更改后 %d 秒内无法连接到此设备,出于安全原因导致配置回滚。如果您" "认为配置的更改是正确的,请执行强制应用。或者您可以在再次尝试应用之前解除此警" @@ -3290,7 +3316,7 @@ msgstr "" msgid "" "The device file of the memory or partition (<abbr title=\"for example\">e.g." "</abbr> <code>/dev/sda1</code>)" -msgstr "存储器或分区的设备文件,(例如:<code>/dev/sda1</code>)" +msgstr "存储器或分区的设备文件(例如:<code>/dev/sda1</code>)" msgid "" "The filesystem that was used to format the memory (<abbr title=\"for example" @@ -3401,8 +3427,8 @@ msgid "" "'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain " "Name System\">DNS</abbr> servers." msgstr "" -"此文件包含类似于 'server=/domain/1.2.3.4' 或 'server=1.2.3.4' 的行,用于解析" -"特定域名或指定上游 <abbr title=\"Domain Name System\">DNS</abbr> 服务器。" +"此文件包含类似于“server=/domain/1.2.3.4”或“server=1.2.3.4”的行,用于解析特定" +"域名或指定上游 <abbr title=\"Domain Name System\">DNS</abbr> 服务器。" msgid "" "This is a list of shell glob patterns for matching files and directories to " @@ -3420,7 +3446,8 @@ msgstr "如果更新密钥没有设置的话,隧道的“更新密钥”或者 msgid "" "This is the content of /etc/rc.local. Insert your own commands here (in " "front of 'exit 0') to execute them at the end of the boot process." -msgstr "启动脚本插入到 'exit 0' 之前即可随系统启动运行。" +msgstr "" +"此处为 /etc/rc.local 的内容。启动脚本插入到“exit 0”之前即可随系统启动运行。" msgid "" "This is the local endpoint address assigned by the tunnel broker, it usually " @@ -3463,7 +3490,10 @@ msgid "Time Synchronization" msgstr "时间同步" msgid "Time Synchronization is not configured yet." -msgstr "尚未配置时间同步" +msgstr "尚未配置时间同步。" + +msgid "Time interval for rekeying GTK" +msgstr "" msgid "Timezone" msgstr "时区" @@ -3594,7 +3624,7 @@ msgid "Unsupported protocol type." msgstr "不支持的协议类型" msgid "Up" -msgstr "向上" +msgstr "上移" msgid "Update lists" msgstr "刷新列表" @@ -3608,7 +3638,7 @@ msgstr "" "使更新后的系统仍然使用当前的系统配置(新的固件需要和当前固件兼容)。" msgid "Upload archive..." -msgstr "上传备份..." +msgstr "上传备份…" msgid "Uploaded File" msgstr "上传的文件" @@ -3832,7 +3862,7 @@ msgid "" "scripts like \"network\", your device might become inaccessible!</strong>" msgstr "" "在此启用或禁用已安装的启动脚本,更改在设备重启后生效。<br /><strong>警告:如" -"果禁用了必要的启动脚本,比如 \"network\",可能会导致无法访问设备!</strong>" +"果禁用了必要的启动脚本,比如“network”,可能会导致无法访问设备!</strong>" msgid "" "You must enable JavaScript in your browser or LuCI will not work properly." @@ -3846,6 +3876,18 @@ msgstr "" "您的 IE 浏览器太老了,无法正常显示这个页面!请更新到 IE7 及以上或使用其他浏览" "器,如 Firefox、Opera、Safari。" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "任意" @@ -3964,6 +4006,9 @@ msgstr "中继模式" msgid "routed" msgstr "已路由" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "服务器模式" @@ -4003,6 +4048,9 @@ msgstr "是" msgid "« Back" msgstr "« 后退" +#~ msgid "No chains in this table" +#~ msgstr "本表中没有链" + #~ msgid "Configuration files will be kept." #~ msgstr "配置文件将被保留。" diff --git a/modules/luci-base/po/zh-tw/base.po b/modules/luci-base/po/zh-tw/base.po index f3354e1924..c34e0fe7b0 100644 --- a/modules/luci-base/po/zh-tw/base.po +++ b/modules/luci-base/po/zh-tw/base.po @@ -396,10 +396,10 @@ msgstr "天線設定" msgid "Any zone" msgstr "任意區域" -msgid "Apply request failed with status <code>%h</code>" +msgid "Apply anyway" msgstr "" -msgid "Apply unchecked" +msgid "Apply request failed with status <code>%h</code>" msgstr "" msgid "Architecture" @@ -675,6 +675,9 @@ msgstr "收集資料中..." msgid "Command" msgstr "指令" +msgid "Comment" +msgstr "" + msgid "Common Configuration" msgstr "一般設定" @@ -920,6 +923,9 @@ msgstr "關閉DNS設置" msgid "Disable Encryption" msgstr "" +msgid "Disable Inactivity Polling" +msgstr "" + msgid "Disable this network" msgstr "" @@ -1430,6 +1436,9 @@ msgstr "在這裡貼上公用SSH-Keys (每行一個)以便驗證" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" msgstr "隱藏 <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" +msgid "Hide empty chains" +msgstr "" + msgid "Host" msgstr "" @@ -1988,6 +1997,9 @@ msgstr "" msgid "Max. Attainable Data Rate (ATTNDR)" msgstr "" +msgid "Maximum allowed Listen Interval" +msgstr "" + msgid "Maximum allowed number of active DHCP leases" msgstr "允許啟用DHCP釋放的最大數量" @@ -2160,9 +2172,6 @@ msgstr "在這個介面尚無DHCP伺服器" msgid "No NAT-T" msgstr "" -msgid "No chains in this table" -msgstr "尚未綁在這個表格中" - msgid "No files found" msgstr "尚未發現任何檔案" @@ -2187,7 +2196,7 @@ msgstr "尚無列出的軟體包可運用" msgid "No password set!" msgstr "尚未設定密碼!" -msgid "No rules in this chain" +msgid "No rules in this chain." msgstr "尚無規則在這個鏈接上" msgid "No scan results available yet..." @@ -2238,6 +2247,9 @@ msgstr "DNS偵錯Nslookup" msgid "Number of cached DNS entries (max is 10000, 0 is no caching)" msgstr "" +msgid "Number of parallel threads used for compression" +msgstr "" + msgid "OK" msgstr "行" @@ -2526,6 +2538,9 @@ msgstr "封包數." msgid "Please enter your username and password." msgstr "請輸入您的用戶名稱和密碼" +msgid "Please update package lists first" +msgstr "" + msgid "Policy" msgstr "策略" @@ -2864,6 +2879,9 @@ msgid "" "can be reached." msgstr "路由器指定介面導出到特定主機或者能夠到達的網路." +msgid "Rule" +msgstr "" + msgid "Run a filesystem check before mounting the device" msgstr "掛載這個設備前先跑系統檢查" @@ -2980,6 +2998,9 @@ msgstr "" msgid "Show current backup file list" msgstr "顯示現今的備份檔清單" +msgid "Show empty chains" +msgstr "" + msgid "Shutdown this interface" msgstr "關閉這個介面" @@ -3001,6 +3022,9 @@ msgstr "" msgid "Size of DNS query cache" msgstr "" +msgid "Size of the ZRam device in megabytes" +msgstr "" + msgid "Skip" msgstr "跳過" @@ -3109,6 +3133,9 @@ msgstr "" "靜態租約是用來指定固定的IP位址和表示的主機名稱給予DHCP用戶端. 它們也需要非動" "態介面設定值以便獲取相應租約的主機服務." +msgid "Station inactivity limit" +msgstr "" + msgid "Status" msgstr "狀態" @@ -3250,10 +3277,9 @@ msgid "" "The device could not be reached within %d seconds after applying the pending " "changes, which caused the configuration to be rolled back for safety " "reasons. If you believe that the configuration changes are correct " -"nonetheless, perform an unchecked configuration apply. Alternatively, you " -"can dismiss this warning and edit changes before attempting to apply again, " -"or revert all pending changes to keep the currently working configuration " -"state." +"nonetheless, proceed by applying anyway. Alternatively, you can dismiss this " +"warning and edit changes before attempting to apply again, or revert all " +"pending changes to keep the currently working configuration state." msgstr "" msgid "" @@ -3439,6 +3465,9 @@ msgstr "校時同步" msgid "Time Synchronization is not configured yet." msgstr "校時同步尚未設定." +msgid "Time interval for rekeying GTK" +msgstr "" + msgid "Timezone" msgstr "時區" @@ -3816,6 +3845,18 @@ msgid "" "or Safari." msgstr "" +msgid "ZRam Compression Algorithm" +msgstr "" + +msgid "ZRam Compression Streams" +msgstr "" + +msgid "ZRam Settings" +msgstr "" + +msgid "ZRam Size" +msgstr "" + msgid "any" msgstr "任意" @@ -3934,6 +3975,9 @@ msgstr "" msgid "routed" msgstr "路由" +msgid "sec" +msgstr "" + msgid "server mode" msgstr "" @@ -3973,6 +4017,9 @@ msgstr "是的" msgid "« Back" msgstr "« 倒退" +#~ msgid "No chains in this table" +#~ msgstr "尚未綁在這個表格中" + #~ msgid "Configuration files will be kept." #~ msgstr "設定檔將被存檔" diff --git a/modules/luci-base/root/www/index.html b/modules/luci-base/root/www/index.html index 59b0d84842..e964175829 100644 --- a/modules/luci-base/root/www/index.html +++ b/modules/luci-base/root/www/index.html @@ -3,9 +3,9 @@ <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Cache-Control" content="no-cache" /> -<meta http-equiv="refresh" content="0; URL=/cgi-bin/luci" /> +<meta http-equiv="refresh" content="0; URL=/cgi-bin/luci/" /> </head> <body style="background-color: white"> -<a style="color: black; font-family: arial, helvetica, sans-serif;" href="/cgi-bin/luci">LuCI - Lua Configuration Interface</a> +<a style="color: black; font-family: arial, helvetica, sans-serif;" href="/cgi-bin/luci/">LuCI - Lua Configuration Interface</a> </body> </html> diff --git a/modules/luci-base/src/template_utils.c b/modules/luci-base/src/template_utils.c index 3979487f12..0411932ce9 100644 --- a/modules/luci-base/src/template_utils.c +++ b/modules/luci-base/src/template_utils.c @@ -258,7 +258,7 @@ static int _validate_utf8(unsigned char **s, int l, struct template_buffer *buf) break; } - /* advance beyound the last found valid continuation char */ + /* advance beyond the last found valid continuation char */ o = v; ptr += v; } diff --git a/modules/luci-mod-freifunk/htdocs/luci-static/resources/osm.js b/modules/luci-mod-freifunk/htdocs/luci-static/resources/osm.js index cae0cd66f7..48ae91cd81 100644 --- a/modules/luci-mod-freifunk/htdocs/luci-static/resources/osm.js +++ b/modules/luci-mod-freifunk/htdocs/luci-static/resources/osm.js @@ -53,8 +53,8 @@ OpenLayers.Control.Click = OpenLayers.Class(OpenLayers.Control, { trigger: function(e) { var lonlat = map.getLonLatFromViewPortPx(e.xy); - lat=merc2lat(lonlat.lat); - lon=merc2lon(lonlat.lon); + var lat=merc2lat(lonlat.lat); + var lon=merc2lon(lonlat.lon); if(parent.document.getElementById(latfield_id)==null){ latfield=document.getElementById('osmlat'); }else{ @@ -92,7 +92,7 @@ function init(){ function drawmap() { OpenLayers.Lang.setCode('de'); - mapdiv=document.getElementById('map'); + var mapdiv=document.getElementById('map'); mapdiv.style.height=window.innerHeight+"px"; mapdiv.style.width=window.innerWidth+"px"; map = new OpenLayers.Map('map', { diff --git a/modules/luci-mod-freifunk/luasrc/view/freifunk-map/frame.htm b/modules/luci-mod-freifunk/luasrc/view/freifunk-map/frame.htm index dbf3820f5c..bd936ac705 100644 --- a/modules/luci-mod-freifunk/luasrc/view/freifunk-map/frame.htm +++ b/modules/luci-mod-freifunk/luasrc/view/freifunk-map/frame.htm @@ -4,7 +4,7 @@ local has_latlon = false local uci = require "luci.model.uci".cursor() uci:foreach("olsrd", "LoadPlugin", function(s) - if s.library == "olsrd_nameservice.so.0.3" and s.latlon_file then + if s.library == "olsrd_nameservice" and s.latlon_file then has_latlon = true end end) diff --git a/modules/luci-mod-freifunk/luasrc/view/freifunk-map/map.htm b/modules/luci-mod-freifunk/luasrc/view/freifunk-map/map.htm index c3951f9c63..f69401d6e3 100644 --- a/modules/luci-mod-freifunk/luasrc/view/freifunk-map/map.htm +++ b/modules/luci-mod-freifunk/luasrc/view/freifunk-map/map.htm @@ -85,7 +85,7 @@ local uci = require "luci.model.uci".cursor() uci:foreach("olsrd", "LoadPlugin", function(s) - if s.library == "olsrd_nameservice.so.0.3" and s.latlon_file then + if s.library == "olsrd_nameservice" and s.latlon_file then fd = io.open(s.latlon_file) end end) diff --git a/modules/luci-mod-network/luasrc/model/cbi/admin_network/ifaces.lua b/modules/luci-mod-network/luasrc/model/cbi/admin_network/ifaces.lua index 8be354b448..bff859befa 100644 --- a/modules/luci-mod-network/luasrc/model/cbi/admin_network/ifaces.lua +++ b/modules/luci-mod-network/luasrc/model/cbi/admin_network/ifaces.lua @@ -284,7 +284,7 @@ if not net:is_floating() then ifname_single = s:taboption("physical", Value, "ifname_single", translate("Interface")) ifname_single.template = "cbi/network_ifacelist" ifname_single.widget = "radio" - ifname_single.nobridges = true + ifname_single.nobridges = net:is_bridge() ifname_single.noaliases = false ifname_single.rmempty = false ifname_single.network = arg[1] @@ -341,7 +341,7 @@ end if not net:is_virtual() then ifname_multi = s:taboption("physical", Value, "ifname_multi", translate("Interface")) ifname_multi.template = "cbi/network_ifacelist" - ifname_multi.nobridges = true + ifname_multi.nobridges = net:is_bridge() ifname_multi.noaliases = true ifname_multi.rmempty = false ifname_multi.network = arg[1] diff --git a/modules/luci-mod-network/luasrc/model/cbi/admin_network/wifi.lua b/modules/luci-mod-network/luasrc/model/cbi/admin_network/wifi.lua index 743efaa1e8..8ed39df486 100644 --- a/modules/luci-mod-network/luasrc/model/cbi/admin_network/wifi.lua +++ b/modules/luci-mod-network/luasrc/model/cbi/admin_network/wifi.lua @@ -16,7 +16,8 @@ local acct_port, acct_secret, acct_server, anonymous_identity, ant1, ant2, mp, nasid, network, password, pmk_r1_push, privkey, privkey2, privkeypwd, privkeypwd2, r0_key_lifetime, r0kh, r1_key_holder, r1kh, reassociation_deadline, retry_timeout, ssid, st, tp, wepkey, wepslot, - wmm, wpakey, wps, disassoc_low_ack, short_preamble, beacon_int, dtim_period + wmm, wpakey, wps, disassoc_low_ack, short_preamble, beacon_int, dtim_period, + wparekey, inactivitypool, maxinactivity, listeninterval arg[1] = arg[1] or "" @@ -507,6 +508,26 @@ if hwtype == "mac80211" then dtim_period.optional = true dtim_period.placeholder = 2 dtim_period.datatype = "range(1,255)" + + + wparekey = s:taboption("advanced", Value, "wpa_group_rekey", translate("Time interval for rekeying GTK"), translate("sec")) + wparekey.optional = true + wparekey.placeholder = 600 + wparekey.datatype = "uinteger" + + inactivitypool = s:taboption("advanced", Flag , "skip_inactivity_poll", translate("Disable Inactivity Polling")) + inactivitypool.optional = true + inactivitypool.datatype = "uinteger" + + maxinactivity = s:taboption("advanced", Value, "max_inactivity", translate("Station inactivity limit"), translate("sec")) + maxinactivity.optional = true + maxinactivity.placeholder = 300 + maxinactivity.datatype = "uinteger" + + listeninterval = s:taboption("advanced", Value, "max_listen_interval", translate("Maximum allowed Listen Interval")) + listeninterval.optional = true + listeninterval.placeholder = 65535 + listeninterval.datatype = "uinteger" disassoc_low_ack = s:taboption("advanced", Flag, "disassoc_low_ack", translate("Disassociate On Low Acknowledgement"), translate("Allow AP mode to disconnect STAs based on low ACK condition")) @@ -794,7 +815,6 @@ for slot=1,4 do end end - if hwtype == "mac80211" or hwtype == "prism2" then -- Probe 802.11r support (and EAP support as a proxy for Openwrt) diff --git a/modules/luci-mod-status/luasrc/controller/admin/status.lua b/modules/luci-mod-status/luasrc/controller/admin/status.lua index 4f04cce545..5b496d83f2 100644 --- a/modules/luci-mod-status/luasrc/controller/admin/status.lua +++ b/modules/luci-mod-status/luasrc/controller/admin/status.lua @@ -8,6 +8,7 @@ function index() entry({"admin", "status", "overview"}, template("admin_status/index"), _("Overview"), 1) entry({"admin", "status", "iptables"}, template("admin_status/iptables"), _("Firewall"), 2).leaf = true + entry({"admin", "status", "iptables_dump"}, call("dump_iptables")).leaf = true entry({"admin", "status", "iptables_action"}, post("action_iptables")).leaf = true entry({"admin", "status", "routes"}, template("admin_status/routes"), _("Routes"), 3) @@ -44,6 +45,37 @@ function action_dmesg() luci.template.render("admin_status/dmesg", {dmesg=dmesg}) end +function dump_iptables(family, table) + local prefix = (family == "6") and "ip6" or "ip" + local ok, lines = pcall(io.lines, "/proc/net/%s_tables_names" % prefix) + if ok and lines then + local s + for s in lines do + if s == table then + local ipt = io.popen( + "/usr/sbin/%stables -t %s --line-numbers -nxvL" + %{ prefix, table }) + + if ipt then + luci.http.prepare_content("text/plain") + + while true do + s = ipt:read(1024) + if not s then break end + luci.http.write(s) + end + + ipt:close() + return + end + end + end + end + + luci.http.status(404, "No such table") + luci.http.prepare_content("text/plain") +end + function action_iptables() if luci.http.formvalue("zero") then if luci.http.formvalue("family") == "6" then diff --git a/modules/luci-mod-status/luasrc/view/admin_status/iptables.htm b/modules/luci-mod-status/luasrc/view/admin_status/iptables.htm index 51e428e40e..50defac90e 100644 --- a/modules/luci-mod-status/luasrc/view/admin_status/iptables.htm +++ b/modules/luci-mod-status/luasrc/view/admin_status/iptables.htm @@ -1,16 +1,11 @@ <%# Copyright 2008-2009 Steven Barth <steven@midlink.org> - Copyright 2008-2015 Jo-Philipp Wich <jow@openwrt.org> + Copyright 2008-2018 Jo-Philipp Wich <jo@mein.io> Licensed to the public under the Apache License 2.0. -%> <%- - - require "luci.sys.iptparser" - local wba = require "luci.tools.webadmin" local fs = require "nixio.fs" - local io = require "io" - local has_ip6tables = fs.access("/usr/sbin/ip6tables") local mode = 4 @@ -18,56 +13,286 @@ mode = luci.dispatcher.context.requestpath mode = tonumber(mode[#mode] ~= "iptables" and mode[#mode]) or 4 end +-%> - local ipt = luci.sys.iptparser.IptParser(mode) +<%+header%> - local rowcnt = 1 - function rowstyle() - rowcnt = rowcnt + 1 - return (rowcnt % 2) + 1 - end +<style type="text/css"> + span.jump, .cbi-tooltip-container { + border-bottom: 1px dotted blue; + cursor: pointer; + } - function link_target(t,c) - if ipt:is_custom_target(c) then - return '<a href="#rule_%s_%s">%s</a>' %{ t:lower(), c, c } - end - return c - end + ul { + list-style: none; + } + + .references { + position: relative; + } + + .references .cbi-tooltip { + left: 0 !important; + top: 1.5em !important; + } + + h4 > span { + font-size: 90%; + } +</style> + +<script type="text/javascript">//<![CDATA[ + var table_names = [ 'Filter', 'NAT', 'Mangle', 'Raw' ]; + + function create_table_section(table) + { + var idiv = document.getElementById('iptables'), + tdiv = idiv.querySelector('[data-table="%s"]'.format(table)), + title = '<%:Table%>: %s'.format(table); + + if (!tdiv) { + tdiv = E('div', { 'data-table': table }, [ + E('h3', {}, title), + E('div') + ]); + + if (idiv.firstElementChild.nodeName.toLowerCase() === 'p') + idiv.removeChild(idiv.firstElementChild); + + var added = false, thisIdx = table_names.indexOf(table); + + idiv.querySelectorAll('[data-table]').forEach(function(child) { + var childIdx = table_names.indexOf(child.getAttribute('data-table')); + + if (added === false && childIdx > thisIdx) { + idiv.insertBefore(tdiv, child); + added = true; + } + }); + + if (added === false) + idiv.appendChild(tdiv); + } + + return tdiv.lastElementChild; + } + + function create_chain_section(table, chain, policy, packets, bytes, references) + { + var tdiv = create_table_section(table), + cdiv = tdiv.querySelector('[data-chain="%s"]'.format(chain)), + title; + + if (policy) + title = '<%:Chain%> <em>%s</em> <span>(<%:Policy%>: <em>%s</em>, %d <%:Packets%>, %.2mB <%:Traffic%>)</span>'.format(chain, policy, packets, bytes); + else + title = '<%:Chain%> <em>%s</em> <span class="references">(%d <%:References%>)</span>'.format(chain, references); + + if (!cdiv) { + cdiv = E('div', { 'data-chain': chain }, [ + E('h4', { 'id': 'rule_%s_%s'.format(table.toLowerCase(), chain) }, title), + E('div', { 'class': 'table' }, [ + E('div', { 'class': 'tr table-titles' }, [ + E('div', { 'class': 'th center' }, '<%:Pkts.%>'), + E('div', { 'class': 'th center' }, '<%:Traffic%>'), + E('div', { 'class': 'th' }, '<%:Target%>'), + E('div', { 'class': 'th' }, '<%:Prot.%>'), + E('div', { 'class': 'th' }, '<%:In%>'), + E('div', { 'class': 'th' }, '<%:Out%>'), + E('div', { 'class': 'th' }, '<%:Source%>'), + E('div', { 'class': 'th' }, '<%:Destination%>'), + E('div', { 'class': 'th' }, '<%:Options%>'), + E('div', { 'class': 'th' }, '<%:Comment%>') + ]) + ]) + ]); + + tdiv.appendChild(cdiv); + } + else { + cdiv.firstElementChild.innerHTML = title; + } + + return cdiv.lastElementChild; + } + + function update_chain_section(chaintable, rows) + { + if (!chaintable) + return; + + cbi_update_table(chaintable, rows, '<%:No rules in this chain.%>'); - function link_iface(i) - local net = wba.iface_get_network(i) - if net and i ~= "lo" then - return '<a href="%s">%s</a>' %{ - url("admin/network/network", net), i + if (rows.length === 0 && + document.querySelector('form > [data-hide-empty="true"]')) + chaintable.parentNode.style.display = 'none'; + else + chaintable.parentNode.style.display = ''; + + chaintable.parentNode.setAttribute('data-empty', rows.length === 0); + } + + function hide_empty(btn) + { + var hide = (btn.getAttribute('data-hide-empty') === 'false'); + + btn.setAttribute('data-hide-empty', hide); + btn.value = hide ? '<%:Show empty chains%>' : '<%:Hide empty chains%>'; + btn.blur(); + + document.querySelectorAll('[data-chain][data-empty="true"]') + .forEach(function(chaintable) { + chaintable.style.display = hide ? 'none' : ''; + }); + } + + function jump_target(ev) + { + var link = ev.target, + table = findParent(link, '[data-table]').getAttribute('data-table'), + chain = link.textContent, + num = +link.getAttribute('data-num'), + elem = document.getElementById('rule_%s_%s'.format(table.toLowerCase(), chain)); + + if (elem) { + (document.documentElement || document.body.parentNode || document.body).scrollTop = elem.offsetTop - 40; + elem.classList.remove('flash'); + void elem.offsetWidth; + elem.classList.add('flash'); + + if (num) { + var rule = elem.nextElementSibling.childNodes[num]; + if (rule) { + rule.classList.remove('flash'); + void rule.offsetWidth; + rule.classList.add('flash'); + } } + } + } - end - return i - end + function parse_output(table, s) + { + var current_chain = null; + var current_rules = []; + var seen_chains = {}; + var chain_refs = {}; + var re = /([^\n]*)\n/g; + var m, m2; - local tables = { "Filter", "NAT", "Mangle", "Raw" } - if mode == 6 then - tables = { "Filter", "Mangle", "Raw" } - local ok, lines = pcall(io.lines, "/proc/net/ip6_tables_names") - if ok and lines then - local line - for line in lines do - if line == "nat" then - tables = { "Filter", "NAT", "Mangle", "Raw" } - end - end - end - end --%> + while ((m = re.exec(s)) != null) { + if (m[1].match(/^Chain (.+) \(policy (\w+) (\d+) packets, (\d+) bytes\)$/)) { + var chain = RegExp.$1, + policy = RegExp.$2, + packets = +RegExp.$3, + bytes = +RegExp.$4; -<%+header%> + update_chain_section(current_chain, current_rules); -<style type="text/css"> - span:target { - color: blue; - text-decoration: underline; + seen_chains[chain] = true; + current_chain = create_chain_section(table, chain, policy, packets, bytes); + current_rules = []; + } + else if (m[1].match(/^Chain (.+) \((\d+) references\)$/)) { + var chain = RegExp.$1, + references = +RegExp.$2; + + update_chain_section(current_chain, current_rules); + + seen_chains[chain] = true; + current_chain = create_chain_section(table, chain, null, null, null, references); + current_rules = []; + } + else if (m[1].match(/^num /)) { + continue; + } + else if ((m2 = m[1].match(/^(\d+) +(\d+) +(\d+) +(.*?) +(\S+) +(\S*) +(\S+) +(\S+) +([a-f0-9:.]+\/\d+) +([a-f0-9:.]+\/\d+) +(.+)$/)) !== null) { + var num = +m2[1], + pkts = +m2[2], + bytes = +m2[3], + target = m2[4], + proto = m2[5], + indev = m2[7], + outdev = m2[8], + srcnet = m2[9], + dstnet = m2[10], + options = m2[11] || '-', + comment = '-'; + + options = options.trim().replace(/(?:^| )\/\* (.+) \*\//, + function(m1, m2) { + comment = m2.replace(/^!fw3(: |$)/, '').trim() || '-'; + return ''; + }) || '-'; + + current_rules.push([ + '%.2m'.format(pkts).nobr(), + '%.2mB'.format(bytes).nobr(), + target ? '<span class="target">%s</span>'.format(target) : '-', + proto, + (indev !== '*') ? '<span class="ifacebadge">%s</span>'.format(indev) : '*', + (outdev !== '*') ? '<span class="ifacebadge">%s</span>'.format(outdev) : '*', + srcnet, + dstnet, + options, + comment + ]); + + if (target) { + chain_refs[target] = chain_refs[target] || []; + chain_refs[target].push([ current_chain, num ]); + } + } + } + + update_chain_section(current_chain, current_rules); + + document.querySelectorAll('[data-table="%s"] [data-chain]'.format(table)) + .forEach(function(cdiv) { + if (!seen_chains[cdiv.getAttribute('data-chain')]) { + cdiv.parentNode.removeChild(cdiv); + return; + } + + cdiv.querySelectorAll('.target').forEach(function(tspan) { + if (seen_chains[tspan.textContent]) { + tspan.classList.add('jump'); + tspan.addEventListener('click', jump_target); + } + }); + + cdiv.querySelectorAll('.references').forEach(function(rspan) { + var refs = chain_refs[cdiv.getAttribute('data-chain')]; + if (refs && refs.length) { + rspan.classList.add('cbi-tooltip-container'); + rspan.appendChild(E('small', { 'class': 'cbi-tooltip ifacebadge', 'style': 'top:1em; left:auto' }, [ E('ul') ])); + + refs.forEach(function(ref) { + var chain = ref[0].parentNode.getAttribute('data-chain'), + num = ref[1]; + + rspan.lastElementChild.lastElementChild.appendChild(E('li', {}, [ + '<%:Chain%> ', + E('span', { + 'class': 'jump', + 'data-num': num, + 'onclick': 'jump_target(event)' + }, chain), + ', <%:Rule%> #%d'.format(num) + ])); + }); + } + }); + }); } -</style> + + table_names.forEach(function(table) { + XHR.poll(5, '<%=url("admin/status/iptables_dump", tostring(mode))%>/' + table.toLowerCase(), null, + function (xhr) { + parse_output(table, xhr.responseText); + }); + }); +//]]></script> <h2 name="content"><%:Firewall Status%></h2> @@ -78,78 +303,18 @@ </ul> <% end %> -<div class="cbi-map" style="position: relative"> - +<div style="position: relative"> <form method="post" action="<%=url("admin/status/iptables_action")%>" style="position: absolute; right: 0"> <input type="hidden" name="token" value="<%=token%>" /> <input type="hidden" name="family" value="<%=mode%>" /> + <input type="button" class="cbi-button" data-hide-empty="false" value="<%:Hide empty chains%>" onclick="hide_empty(this)" /> <input type="submit" class="cbi-button" name="zero" value="<%:Reset Counters%>" /> <input type="submit" class="cbi-button" name="restart" value="<%:Restart Firewall%>" /> </form> +</div> - <div class="cbi-section"> - - <% for _, tbl in ipairs(tables) do chaincnt = 0 %> - <h3><%:Table%>: <%=tbl%></h3> - - <% for _, chain in ipairs(ipt:chains(tbl)) do - rowcnt = 0 - chaincnt = chaincnt + 1 - chaininfo = ipt:chain(tbl, chain) - %> - <h4 id="rule_<%=tbl:lower()%>_<%=chain%>"> - <%:Chain%> <em><%=chain%></em> - (<%- if chaininfo.policy then -%> - <%:Policy%>: <em><%=chaininfo.policy%></em>, <%:Packets%>: <%=chaininfo.packets%>, <%:Traffic%>: <%=wba.byte_format(chaininfo.bytes)-%> - <%- else -%> - <%:References%>: <%=chaininfo.references-%> - <%- end -%>) - </h4> - - <div class="cbi-section-node"> - <div class="table" style="font-size:90%"> - <div class="tr table-titles cbi-rowstyle-<%=rowstyle()%>"> - <div class="th hide-xs"><%:Pkts.%></div> - <div class="th nowrap"><%:Traffic%></div> - <div class="th col-5"><%:Target%></div> - <div class="th"><%:Prot.%></div> - <div class="th"><%:In%></div> - <div class="th"><%:Out%></div> - <div class="th"><%:Source%></div> - <div class="th"><%:Destination%></div> - <div class="th col-9 hide-xs"><%:Options%></div> - </div> - - <% for _, rule in ipairs(ipt:find({table=tbl, chain=chain})) do %> - <div class="tr cbi-rowstyle-<%=rowstyle()%>"> - <div class="td"><%=rule.packets%></div> - <div class="td nowrap"><%=wba.byte_format(rule.bytes)%></div> - <div class="td col-5"><%=rule.target and link_target(tbl, rule.target) or "-"%></div> - <div class="td"><%=rule.protocol%></div> - <div class="td"><%=link_iface(rule.inputif)%></div> - <div class="td"><%=link_iface(rule.outputif)%></div> - <div class="td"><%=rule.source%></div> - <div class="td"><%=rule.destination%></div> - <div class="td col-9 hide-xs"><%=#rule.options > 0 and luci.util.pcdata(table.concat(rule.options, " ")) or "-"%></div> - </div> - <% end %> - - <% if rowcnt == 1 then %> - <div class="tr cbi-rowstyle-<%=rowstyle()%>"> - <div class="td" colspan="9"><em><%:No rules in this chain%></em></div> - </div> - <% end %> - </div> - </div> - <% end %> - - <% if chaincnt == 0 then %> - <em><%:No chains in this table%></em> - <% end %> - - <br /><br /> - <% end %> - </div> +<div id="iptables"> + <p><em><%:Collecting data...%></em></p> </div> <%+footer%> diff --git a/modules/luci-mod-status/luasrc/view/admin_status/wireless.htm b/modules/luci-mod-status/luasrc/view/admin_status/wireless.htm index 8ec43cb0e6..03ea2bef01 100644 --- a/modules/luci-mod-status/luasrc/view/admin_status/wireless.htm +++ b/modules/luci-mod-status/luasrc/view/admin_status/wireless.htm @@ -61,6 +61,7 @@ var label_rate_peak; var label_scale; + var label_scale_2; /* wait for SVG */ diff --git a/modules/luci-mod-system/luasrc/model/cbi/admin_system/fstab.lua b/modules/luci-mod-system/luasrc/model/cbi/admin_system/fstab.lua index 02fe9cc05e..6f0921fdcf 100644 --- a/modules/luci-mod-system/luasrc/model/cbi/admin_system/fstab.lua +++ b/modules/luci-mod-system/luasrc/model/cbi/admin_system/fstab.lua @@ -233,7 +233,7 @@ ck.cfgvalue = function(self, section) end -swap = m:section(TypedSection, "swap", "SWAP", translate("If your physical memory is insufficient unused data can be temporarily swapped to a swap-device resulting in a higher amount of usable <abbr title=\"Random Access Memory\">RAM</abbr>. Be aware that swapping data is a very slow process as the swap-device cannot be accessed with the high datarates of the <abbr title=\"Random Access Memory\">RAM</abbr>.")) +swap = m:section(TypedSection, "swap", translate("SWAP"), translate("If your physical memory is insufficient unused data can be temporarily swapped to a swap-device resulting in a higher amount of usable <abbr title=\"Random Access Memory\">RAM</abbr>. Be aware that swapping data is a very slow process as the swap-device cannot be accessed with the high datarates of the <abbr title=\"Random Access Memory\">RAM</abbr>.")) swap.anonymous = true swap.addremove = true swap.template = "cbi/tblsection" diff --git a/modules/luci-mod-system/luasrc/model/cbi/admin_system/system.lua b/modules/luci-mod-system/luasrc/model/cbi/admin_system/system.lua index c7fdfcddba..7558d42161 100644 --- a/modules/luci-mod-system/luasrc/model/cbi/admin_system/system.lua +++ b/modules/luci-mod-system/luasrc/model/cbi/admin_system/system.lua @@ -9,6 +9,7 @@ local conf = require "luci.config" local m, s, o local has_ntpd = fs.access("/usr/sbin/ntpd") +local has_zram = fs.access("/etc/init.d/zram") m = Map("system", translate("System"), translate("Here you can configure the basic aspects of your device like its hostname or the timezone.")) m:chain("luci") @@ -21,7 +22,7 @@ s.addremove = false s:tab("general", translate("General Settings")) s:tab("logging", translate("Logging")) s:tab("language", translate("Language and Style")) - +if has_zram then s:tab("zram", translate("ZRam Settings")) end -- -- System Properties @@ -106,7 +107,30 @@ o:value(9, translate("Warning")) -- --- Langauge & Style +-- Zram Properties +-- +if has_zram then + o = s:taboption("zram", Value, "zram_size_mb", translate("ZRam Size"), translate("Size of the ZRam device in megabytes")) + o.optional = true + o.placeholder = 16 + o.datatype = "uinteger" + + o = s:taboption("zram", ListValue, "zram_comp_algo", translate("ZRam Compression Algorithm")) + o.optional = true + o.placeholder = lzo + o:value("lzo", "lzo") + o:value("lz4", "lz4") + o:value("deflate", "deflate") + + o = s:taboption("zram", Value, "zram_comp_streams", translate("ZRam Compression Streams"), translate("Number of parallel threads used for compression")) + o.optional = true + o.placeholder = 1 + o.datatype = "uinteger" +end + + +-- +-- Language & Style -- o = s:taboption("language", ListValue, "_lang", translate("Language")) diff --git a/modules/luci-mod-system/luasrc/view/admin_system/packages.htm b/modules/luci-mod-system/luasrc/view/admin_system/packages.htm index 0adbcb4934..9e364d69ae 100644 --- a/modules/luci-mod-system/luasrc/view/admin_system/packages.htm +++ b/modules/luci-mod-system/luasrc/view/admin_system/packages.htm @@ -102,16 +102,16 @@ end <div class="cbi-value"> <label class="cbi-value-title"><%:Download and install package%>:</label> <div class="cbi-value-field"> - <span><input type="text" name="url" size="30" value="" /></span> - <input class="cbi-button cbi-button-save" type="submit" name="go" value="<%:OK%>" /> + <span><input type="text" name="url" size="30" <% if no_lists then %>disabled="disabled" placeholder="<%:Please update package lists first%>"<% end %> value="" /></span> + <input class="cbi-button cbi-button-save" type="submit" name="go" <% if no_lists then %>disabled="disabled"<% end %> value="<%:OK%>" /> </div> </div> <div class="cbi-value cbi-value-last"> <label class="cbi-value-title"><%:Filter%>:</label> <div class="cbi-value-field"> - <span><input type="text" name="query" size="20" value="<%=pcdata(query)%>" /></span> - <input type="submit" class="cbi-button cbi-button-action" name="search" value="<%:Find package%>" /> + <span><input type="text" name="query" size="20" <% if no_lists then %>disabled="disabled" placeholder="<%:Please update package lists first%>"<% else %>value="<%=pcdata(query)%>"<% end %> /></span> + <input type="submit" class="cbi-button cbi-button-action" name="search" <% if no_lists then %>disabled="disabled"<% end %> value="<%:Find package%>" /> </div> </div> </div> |