mirror of
https://github.com/Ysurac/openmptcprouter-feeds.git
synced 2025-03-09 15:40:03 +00:00
Update luci-base and luci-mod-admin-full to latest upstream version
This commit is contained in:
parent
e00cf0f4f0
commit
6b6c7e6d7a
75 changed files with 3309 additions and 2564 deletions
|
@ -14,12 +14,13 @@ LUCI_BASENAME:=base
|
|||
LUCI_TITLE:=LuCI core libraries
|
||||
LUCI_DEPENDS:=+lua +luci-lib-nixio +luci-lib-ip +rpcd +libubus-lua +luci-lib-jsonc +liblucihttp-lua
|
||||
|
||||
PKG_SOURCE:=LuaSrcDiet-0.12.1.tar.bz2
|
||||
PKG_SOURCE_URL:=https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/luasrcdiet
|
||||
PKG_HASH:=ed7680f2896269ae8633756e7edcf09050812f78c8f49e280e63c30d14f35aea
|
||||
PKG_LICENSE:=Apache-2.0
|
||||
|
||||
HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/LuaSrcDiet-0.12.1
|
||||
PKG_SOURCE:=v1.0.0.tar.gz
|
||||
PKG_SOURCE_URL:=https://github.com/jirutka/luasrcdiet/archive/
|
||||
PKG_HASH:=48162e63e77d009f5848f18a5cabffbdfc867d0e5e73c6d407f6af5d6880151b
|
||||
PKG_LICENSE:=MIT
|
||||
|
||||
HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/luasrcdiet-1.0.0
|
||||
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
|
||||
|
@ -36,13 +37,13 @@ endef
|
|||
|
||||
define Host/Compile
|
||||
$(MAKE) -C src/ clean po2lmo
|
||||
$(MAKE) -C $(HOST_BUILD_DIR) bin/LuaSrcDiet.lua
|
||||
$(MAKE) -C $(HOST_BUILD_DIR) bin/luasrcdiet
|
||||
endef
|
||||
|
||||
define Host/Install
|
||||
$(INSTALL_DIR) $(1)/bin
|
||||
$(INSTALL_BIN) src/po2lmo $(1)/bin/po2lmo
|
||||
$(INSTALL_BIN) $(HOST_BUILD_DIR)/bin/LuaSrcDiet.lua $(1)/bin/LuaSrcDiet
|
||||
$(INSTALL_BIN) $(HOST_BUILD_DIR)/bin/luasrcdiet $(1)/bin/luasrcdiet
|
||||
endef
|
||||
|
||||
$(eval $(call HostBuild))
|
||||
|
|
|
@ -620,7 +620,11 @@ function cbi_init() {
|
|||
}
|
||||
|
||||
document.querySelectorAll('.cbi-dropdown').forEach(function(s) {
|
||||
cbi_dropdown_init(s);
|
||||
cbi_dropdown_init(s);
|
||||
});
|
||||
|
||||
document.querySelectorAll('.cbi-tooltip:not(:empty)').forEach(function(s) {
|
||||
s.parentNode.classList.add('cbi-tooltip-container');
|
||||
});
|
||||
|
||||
cbi_d_update();
|
||||
|
@ -1232,14 +1236,13 @@ function cbi_validate_field(cbid, optional, type)
|
|||
|
||||
function cbi_row_swap(elem, up, store)
|
||||
{
|
||||
var tr = elem.parentNode;
|
||||
|
||||
while (tr && !tr.classList.contains('cbi-section-table-row'))
|
||||
tr = tr.parentNode;
|
||||
var tr = findParent(elem.parentNode, '.cbi-section-table-row');
|
||||
|
||||
if (!tr)
|
||||
return false;
|
||||
|
||||
tr.classList.remove('flash');
|
||||
|
||||
if (up) {
|
||||
var prev = tr.previousElementSibling;
|
||||
|
||||
|
@ -1277,6 +1280,9 @@ function cbi_row_swap(elem, up, store)
|
|||
if (input)
|
||||
input.value = ids.join(' ');
|
||||
|
||||
window.scrollTo(0, tr.offsetTop);
|
||||
window.setTimeout(function() { tr.classList.add('flash'); }, 1);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -1522,6 +1528,19 @@ function toElem(s)
|
|||
return elem || null;
|
||||
}
|
||||
|
||||
function findParent(node, selector)
|
||||
{
|
||||
while (node)
|
||||
if (node.msMatchesSelector && node.msMatchesSelector(selector))
|
||||
return node;
|
||||
else if (node.matches && node.matches(selector))
|
||||
return node;
|
||||
else
|
||||
node = node.parentNode;
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
function E()
|
||||
{
|
||||
var html = arguments[0],
|
||||
|
@ -1541,7 +1560,7 @@ function E()
|
|||
|
||||
if (attr)
|
||||
for (var key in attr)
|
||||
if (attr.hasOwnProperty(key))
|
||||
if (attr.hasOwnProperty(key) && attr[key] !== null && attr[key] !== undefined)
|
||||
elem.setAttribute(key, attr[key]);
|
||||
|
||||
if (typeof(data) === 'function')
|
||||
|
@ -1818,18 +1837,6 @@ CBIDropdown = {
|
|||
document.querySelectorAll('.cbi-dropdown[open]').forEach(function(s) {
|
||||
s.dispatchEvent(new CustomEvent('cbi-dropdown-close', {}));
|
||||
});
|
||||
},
|
||||
|
||||
findParent: function(node, selector) {
|
||||
while (node)
|
||||
if (node.msMatchesSelector && node.msMatchesSelector(selector))
|
||||
return node;
|
||||
else if (node.matches && node.matches(selector))
|
||||
return node;
|
||||
else
|
||||
node = node.parentNode;
|
||||
|
||||
return null;
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -1908,7 +1915,7 @@ function cbi_dropdown_init(sb) {
|
|||
sbox.openDropdown(this);
|
||||
}
|
||||
else {
|
||||
var li = sbox.findParent(ev.target, 'li');
|
||||
var li = findParent(ev.target, 'li');
|
||||
if (li && li.parentNode.classList.contains('dropdown'))
|
||||
sbox.toggleItem(this, li);
|
||||
}
|
||||
|
@ -1933,7 +1940,7 @@ function cbi_dropdown_init(sb) {
|
|||
}
|
||||
else
|
||||
{
|
||||
var active = sbox.findParent(document.activeElement, 'li');
|
||||
var active = findParent(document.activeElement, 'li');
|
||||
|
||||
switch (ev.keyCode) {
|
||||
case 27:
|
||||
|
@ -1986,7 +1993,7 @@ function cbi_dropdown_init(sb) {
|
|||
if (!this.hasAttribute('open'))
|
||||
return;
|
||||
|
||||
var li = sbox.findParent(ev.target, 'li');
|
||||
var li = findParent(ev.target, 'li');
|
||||
if (li) {
|
||||
if (li.parentNode.classList.contains('dropdown'))
|
||||
sbox.setFocus(this, li);
|
||||
|
@ -2023,18 +2030,18 @@ function cbi_dropdown_init(sb) {
|
|||
});
|
||||
|
||||
create.addEventListener('focus', function(ev) {
|
||||
var cbox = sbox.findParent(this, 'li').querySelector('input[type="checkbox"]');
|
||||
var cbox = findParent(this, 'li').querySelector('input[type="checkbox"]');
|
||||
if (cbox) cbox.checked = true;
|
||||
sb.setAttribute('locked-in', '');
|
||||
});
|
||||
|
||||
create.addEventListener('blur', function(ev) {
|
||||
var cbox = sbox.findParent(this, 'li').querySelector('input[type="checkbox"]');
|
||||
var cbox = findParent(this, 'li').querySelector('input[type="checkbox"]');
|
||||
if (cbox) cbox.checked = false;
|
||||
sb.removeAttribute('locked-in');
|
||||
});
|
||||
|
||||
var li = sbox.findParent(create, 'li');
|
||||
var li = findParent(create, 'li');
|
||||
|
||||
li.setAttribute('unselectable', '');
|
||||
li.addEventListener('click', function(ev) {
|
||||
|
@ -2044,3 +2051,77 @@ function cbi_dropdown_init(sb) {
|
|||
}
|
||||
|
||||
cbi_dropdown_init.prototype = CBIDropdown;
|
||||
|
||||
function cbi_update_table(table, data, placeholder) {
|
||||
target = isElem(table) ? table : document.querySelector(table);
|
||||
|
||||
if (!isElem(target))
|
||||
return;
|
||||
|
||||
target.querySelectorAll('.tr.table-titles, .cbi-section-table-titles').forEach(function(thead) {
|
||||
var titles = [];
|
||||
|
||||
thead.querySelectorAll('.th').forEach(function(th) {
|
||||
titles.push(th);
|
||||
});
|
||||
|
||||
if (Array.isArray(data)) {
|
||||
var n = 0, rows = target.querySelectorAll('.tr');
|
||||
|
||||
data.forEach(function(row) {
|
||||
var trow = E('div', { 'class': 'tr' });
|
||||
|
||||
for (var i = 0; i < titles.length; i++) {
|
||||
var text = titles[i].innerText;
|
||||
var td = trow.appendChild(E('div', {
|
||||
'class': titles[i].className,
|
||||
'data-title': text ? text.trim() : null
|
||||
}, row[i] || ''));
|
||||
|
||||
td.classList.remove('th');
|
||||
td.classList.add('td');
|
||||
}
|
||||
|
||||
trow.classList.add('cbi-rowstyle-%d'.format((n++ % 2) ? 2 : 1));
|
||||
|
||||
if (rows[n])
|
||||
target.replaceChild(trow, rows[n]);
|
||||
else
|
||||
target.appendChild(trow);
|
||||
});
|
||||
|
||||
while (rows[++n])
|
||||
target.removeChild(rows[n]);
|
||||
|
||||
if (placeholder && target.firstElementChild === target.lastElementChild) {
|
||||
var trow = target.appendChild(E('div', { 'class': 'tr placeholder' }));
|
||||
var td = trow.appendChild(E('div', { 'class': titles[0].className }, placeholder));
|
||||
|
||||
td.classList.remove('th');
|
||||
td.classList.add('td');
|
||||
}
|
||||
}
|
||||
else {
|
||||
thead.parentNode.style.display = 'none';
|
||||
|
||||
thead.parentNode.querySelectorAll('.tr, .cbi-section-table-row').forEach(function(trow) {
|
||||
if (trow !== thead) {
|
||||
var n = 0;
|
||||
trow.querySelectorAll('.th, .td').forEach(function(td) {
|
||||
if (n < titles.length) {
|
||||
var text = (titles[n++].innerText || '').trim();
|
||||
if (text !== '')
|
||||
td.setAttribute('data-title', text);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
thead.parentNode.style.display = '';
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
document.querySelectorAll('.table').forEach(cbi_update_table);
|
||||
});
|
||||
|
|
|
@ -204,7 +204,6 @@ XHR.poll = function(interval, url, data, callback, post)
|
|||
};
|
||||
|
||||
XHR._q.push(e);
|
||||
XHR.run();
|
||||
|
||||
return e;
|
||||
}
|
||||
|
@ -260,3 +259,5 @@ XHR.running = function()
|
|||
{
|
||||
return !!(XHR._r && XHR._i);
|
||||
}
|
||||
|
||||
document.addEventListener('DOMContentLoaded', XHR.run);
|
||||
|
|
|
@ -703,15 +703,22 @@ function _create_node(path)
|
|||
local last = table.remove(path)
|
||||
local parent = _create_node(path)
|
||||
|
||||
c = {nodes={}, auto=true}
|
||||
-- the node is "in request" if the request path matches
|
||||
-- at least up to the length of the node path
|
||||
if parent.inreq and context.path[#path+1] == last then
|
||||
c.inreq = true
|
||||
c = {nodes={}, auto=true, inreq=true}
|
||||
|
||||
local _, n
|
||||
for _, n in ipairs(path) do
|
||||
if context.path[_] ~= n then
|
||||
c.inreq = false
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
c.inreq = c.inreq and (context.path[#path + 1] == last)
|
||||
|
||||
parent.nodes[last] = c
|
||||
context.treecache[name] = c
|
||||
end
|
||||
|
||||
return c
|
||||
end
|
||||
|
||||
|
|
|
@ -6,9 +6,25 @@ module("luci.tools.status", package.seeall)
|
|||
local uci = require "luci.model.uci".cursor()
|
||||
local ipc = require "luci.ip"
|
||||
|
||||
local function duid_to_mac(duid)
|
||||
local b1, b2, b3, b4, b5, b6
|
||||
|
||||
-- DUID-LLT / Ethernet
|
||||
if type(duid) == "string" and #duid == 28 then
|
||||
b1, b2, b3, b4, b5, b6 = duid:match("^00010001(%x%x)(%x%x)(%x%x)(%x%x)(%x%x)(%x%x)%x%x%x%x%x%x%x%x$")
|
||||
|
||||
-- DUID-LL / Ethernet
|
||||
elseif type(duid) == "string" and #duid == 20 then
|
||||
b1, b2, b3, b4, b5, b6 = duid:match("^00030001(%x%x)(%x%x)(%x%x)(%x%x)(%x%x)(%x%x)$")
|
||||
end
|
||||
|
||||
return b1 and ipc.checkmac(table.concat({ b1, b2, b3, b4, b5, b6 }, ":"))
|
||||
end
|
||||
|
||||
local function dhcp_leases_common(family)
|
||||
local rv = { }
|
||||
local nfs = require "nixio.fs"
|
||||
local sys = require "luci.sys"
|
||||
local leasefile = "/tmp/dhcp.leases"
|
||||
|
||||
uci:foreach("dhcp", "dnsmasq",
|
||||
|
@ -87,6 +103,22 @@ local function dhcp_leases_common(family)
|
|||
fd:close()
|
||||
end
|
||||
|
||||
if family == 6 then
|
||||
local _, lease
|
||||
local hosts = sys.net.host_hints()
|
||||
for _, lease in ipairs(rv) do
|
||||
local mac = duid_to_mac(lease.duid)
|
||||
local host = mac and hosts[mac]
|
||||
if host then
|
||||
if not lease.name then
|
||||
lease.host_hint = host.name or host.ipv4 or host.ipv6
|
||||
elseif host.name and lease.hostname ~= host.name then
|
||||
lease.host_hint = host.name
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return rv
|
||||
end
|
||||
|
||||
|
@ -113,6 +145,11 @@ function wifi_networks()
|
|||
|
||||
local net
|
||||
for _, net in ipairs(dev:get_wifinets()) do
|
||||
local a, an = nil, 0
|
||||
for _, a in pairs(net:assoclist() or {}) do
|
||||
an = an + 1
|
||||
end
|
||||
|
||||
rd.networks[#rd.networks+1] = {
|
||||
name = net:shortname(),
|
||||
link = net:adminlink(),
|
||||
|
@ -128,10 +165,10 @@ function wifi_networks()
|
|||
noise = net:noise(),
|
||||
bitrate = net:bitrate(),
|
||||
ifname = net:ifname(),
|
||||
assoclist = net:assoclist(),
|
||||
country = net:country(),
|
||||
txpower = net:txpower(),
|
||||
txpoweroff = net:txpower_offset(),
|
||||
num_assoc = an,
|
||||
disabled = (dev:get("disabled") == "1" or
|
||||
net:get("disabled") == "1")
|
||||
}
|
||||
|
@ -165,7 +202,6 @@ function wifi_network(id)
|
|||
noise = net:noise(),
|
||||
bitrate = net:bitrate(),
|
||||
ifname = net:ifname(),
|
||||
assoclist = net:assoclist(),
|
||||
country = net:country(),
|
||||
txpower = net:txpower(),
|
||||
txpoweroff = net:txpower_offset(),
|
||||
|
@ -182,6 +218,52 @@ function wifi_network(id)
|
|||
return { }
|
||||
end
|
||||
|
||||
function wifi_assoclist()
|
||||
local sys = require "luci.sys"
|
||||
local ntm = require "luci.model.network".init()
|
||||
local hosts = sys.net.host_hints()
|
||||
|
||||
local assoc = {}
|
||||
local _, dev, net, bss
|
||||
|
||||
for _, dev in ipairs(ntm:get_wifidevs()) do
|
||||
local radioname = dev:get_i18n()
|
||||
|
||||
for _, net in ipairs(dev:get_wifinets()) do
|
||||
local netname = net:shortname()
|
||||
local netlink = net:adminlink()
|
||||
local ifname = net:ifname()
|
||||
|
||||
for _, bss in pairs(net:assoclist() or {}) do
|
||||
local host = hosts[_]
|
||||
|
||||
bss.bssid = _
|
||||
bss.ifname = ifname
|
||||
bss.radio = radioname
|
||||
bss.name = netname
|
||||
bss.link = netlink
|
||||
|
||||
bss.host_name = (host) and (host.name or host.ipv4 or host.ipv6)
|
||||
bss.host_hint = (host and host.name and (host.ipv4 or host.ipv6)) and (host.ipv4 or host.ipv6)
|
||||
|
||||
assoc[#assoc+1] = bss
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
table.sort(assoc, function(a, b)
|
||||
if a.radio ~= b.radio then
|
||||
return a.radio < b.radio
|
||||
elseif a.ifname ~= b.ifname then
|
||||
return a.ifname < b.ifname
|
||||
else
|
||||
return a.bssid < b.bssid
|
||||
end
|
||||
end)
|
||||
|
||||
return assoc
|
||||
end
|
||||
|
||||
function switch_status(devs)
|
||||
local dev
|
||||
local switches = { }
|
||||
|
|
|
@ -47,7 +47,7 @@
|
|||
}
|
||||
</style>
|
||||
|
||||
<script type="text/javascript" src="<%=resource%>/cbi.js?v=git-18.138.59467-72fe5dd"></script>
|
||||
<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
|
||||
<script type="text/javascript">//<![CDATA[
|
||||
var xhr = new XHR(),
|
||||
uci_apply_auth = { sid: '<%=luci.dispatcher.context.authsession%>', token: '<%=token%>' },
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<%+cbi/valueheader%>
|
||||
<% if self:cfgvalue(section) ~= false then %>
|
||||
<input class="cbi-button cbi-input-<%=self.inputstyle or "button" %>" type="submit"<%= attr("name", cbid) .. attr("id", cbid) .. attr("value", self.inputtitle or self.title)%> />
|
||||
<input class="cbi-button cbi-button-<%=self.inputstyle or "button" %>" type="submit"<%= attr("name", cbid) .. attr("id", cbid) .. attr("value", self.inputtitle or self.title)%> />
|
||||
<% else %>
|
||||
-
|
||||
<% end %>
|
||||
|
|
|
@ -1,2 +1,10 @@
|
|||
<div class="td cbi-value-field<% if self.error and self.error[section] then %> cbi-value-error<% end %>">
|
||||
<%-
|
||||
local title = luci.util.trim(striptags(self.title))
|
||||
local ftype = self.template and self.template:gsub("^.+/", "")
|
||||
-%>
|
||||
<div class="td cbi-value-field<% if self.error and self.error[section] then %> cbi-value-error<% end %>"<%=
|
||||
attr("data-name", self.option) ..
|
||||
ifattr(ftype and #ftype > 0, "data-type", ftype) ..
|
||||
ifattr(title and #title > 0, "data-title", title)
|
||||
%>>
|
||||
<div id="cbi-<%=self.config.."-"..section.."-"..self.option%>" data-index="<%=self.index%>" data-depends="<%=pcdata(self:deplist2json(section))%>">
|
||||
|
|
|
@ -36,6 +36,18 @@
|
|||
<%=pcdata(self.vallist[i])%>
|
||||
</li>
|
||||
<% end %>
|
||||
<% if self.custom then %>
|
||||
<li>
|
||||
<input type="password" style="display:none" />
|
||||
<input class="create-item-input" type="text"<%=
|
||||
attr("placeholder", self.custom ~= true and
|
||||
self.custom or
|
||||
(self.multiple and
|
||||
translate("Enter custom values") or
|
||||
translate("Enter custom value")))
|
||||
%> />
|
||||
</li>
|
||||
<% end %>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -14,46 +14,59 @@
|
|||
local def = fwm:get_defaults()
|
||||
local zone = fwm:get_zone(value)
|
||||
local empty = true
|
||||
|
||||
local function render_zone(zone)
|
||||
-%>
|
||||
<label class="zonebadge" style="background-color:<%=zone:get_color()%>">
|
||||
<strong><%=zone:name()%></strong>
|
||||
<div class="cbi-tooltip">
|
||||
<%-
|
||||
local zempty = true
|
||||
for _, net in ipairs(zone:get_networks()) do
|
||||
net = nwm:get_network(net)
|
||||
if net then
|
||||
zempty = false
|
||||
-%>
|
||||
<span class="ifacebadge<% if net:name() == self.network then %> ifacebadge-active<% end %>"><%=net:name()%>: 
|
||||
<%
|
||||
local nempty = true
|
||||
for _, iface in ipairs(net:is_bridge() and net:get_interfaces() or { net:get_interface() }) do
|
||||
nempty = false
|
||||
%>
|
||||
<img<%=attr("title", iface:get_i18n())%> src="<%=resource%>/icons/<%=iface:type()%><%=iface:is_up() and "" or "_disabled"%>.png" />
|
||||
<% end %>
|
||||
<% if nempty then %><em><%:(empty)%></em><% end %>
|
||||
</span>
|
||||
<%- end end -%>
|
||||
<% if zempty then %><span class="ifacebadge"><em><%:(empty)%></em></span><% end %>
|
||||
</div>
|
||||
</label>
|
||||
<%-
|
||||
end
|
||||
-%>
|
||||
|
||||
<% if zone then %>
|
||||
<div style="white-space:nowrap">
|
||||
<label class="zonebadge" style="background-color:<%=zone:get_color()%>">
|
||||
<strong><%=zone:name()%>:</strong>
|
||||
<%-
|
||||
local zempty = true
|
||||
for _, net in ipairs(zone:get_networks()) do
|
||||
net = nwm:get_network(net)
|
||||
if net then
|
||||
zempty = false
|
||||
-%>
|
||||
<span class="ifacebadge<% if net:name() == self.network then %> ifacebadge-active<% end %>"><%=net:name()%>:
|
||||
<%
|
||||
local nempty = true
|
||||
for _, iface in ipairs(net:is_bridge() and net:get_interfaces() or { net:get_interface() }) do
|
||||
nempty = false
|
||||
%>
|
||||
<img<%=attr("title", iface:get_i18n())%> style="width:16px; height:16px; vertical-align:middle" src="<%=resource%>/icons/<%=iface:type()%><%=iface:is_up() and "" or "_disabled"%>.png" />
|
||||
<% end %>
|
||||
<% if nempty then %><em><%:(empty)%></em><% end %>
|
||||
</span>
|
||||
<%- end end -%>
|
||||
<%- if zempty then %><em><%:(empty)%></em><% end -%>
|
||||
</label>
|
||||
 ⇒ 
|
||||
<% for _, fwd in ipairs(zone:get_forwardings_by("src")) do
|
||||
fz = fwd:dest_zone()
|
||||
if fz then
|
||||
empty = false %>
|
||||
<label class="zonebadge" style="background-color:<%=fz:get_color()%>">
|
||||
<strong><%=fz:name()%></strong>
|
||||
</label> 
|
||||
<% end end %>
|
||||
<% if empty then %>
|
||||
<div class="zone-forwards">
|
||||
<div class="zone-src">
|
||||
<%=render_zone(zone)%>
|
||||
</div>
|
||||
<span>⇒</span>
|
||||
<div class="zone-dest">
|
||||
<%
|
||||
for _, fwd in ipairs(zone:get_forwardings_by("src")) do
|
||||
fz = fwd:dest_zone()
|
||||
if fz then
|
||||
empty = false
|
||||
render_zone(fz)
|
||||
end
|
||||
end
|
||||
if empty then
|
||||
%>
|
||||
<label class="zonebadge zonebadge-empty">
|
||||
<strong><%=zone:forward():upper()%></strong>
|
||||
</label>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
<%- if pageaction then -%>
|
||||
<div class="cbi-page-actions">
|
||||
<% if redirect and not flow.hidebackbtn then %>
|
||||
<div style="float:left">
|
||||
<input class="cbi-button cbi-button-link" type="button" value="<%:Back to Overview%>" onclick="location.href='<%=pcdata(redirect)%>'" />
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<% if flow.skip then %>
|
||||
|
|
|
@ -3,7 +3,6 @@
|
|||
<br />
|
||||
<%- end %>
|
||||
<div class="cbi-value-description">
|
||||
<span class="cbi-value-helpicon"><img src="<%=resource%>/cbi/help.gif" alt="<%:help%>" /></span>
|
||||
<%=self.description%>
|
||||
</div>
|
||||
<%- end %>
|
||||
|
|
|
@ -31,7 +31,6 @@
|
|||
</li>
|
||||
<% end %>
|
||||
</ul>
|
||||
<br />
|
||||
<% for i, section in ipairs(self.children) do %>
|
||||
<div class="cbi-tabcontainer" id="container.m-<%=self.config%>.<%=section.section or section.sectiontype%>"<% if section.sectiontype ~= self.selected_tab then %> style="display:none"<% end %>>
|
||||
<% section:render() %>
|
||||
|
@ -53,6 +52,4 @@
|
|||
<% else %>
|
||||
<%- self:render_children() %>
|
||||
<% end %>
|
||||
|
||||
<br />
|
||||
</div>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<% if self:cfgvalue(self.section) then section = self.section %>
|
||||
<fieldset class="cbi-section">
|
||||
<div class="cbi-section">
|
||||
<% if self.title and #self.title > 0 then -%>
|
||||
<legend><%=self.title%></legend>
|
||||
<%- end %>
|
||||
|
@ -15,17 +15,16 @@
|
|||
<div class="cbi-section-node<% if self.tabs then %> cbi-section-node-tabbed<% end %>" id="cbi-<%=self.config%>-<%=section%>">
|
||||
<%+cbi/ucisection%>
|
||||
</div>
|
||||
<br />
|
||||
</fieldset>
|
||||
</div>
|
||||
<% elseif self.addremove then %>
|
||||
<% if self.template_addremove then include(self.template_addremove) else -%>
|
||||
<fieldset class="cbi-section" id="cbi-<%=self.config%>-<%=self.section%>">
|
||||
<div class="cbi-section" id="cbi-<%=self.config%>-<%=self.section%>">
|
||||
<% if self.title and #self.title > 0 then -%>
|
||||
<legend><%=self.title%></legend>
|
||||
<%- end %>
|
||||
<div class="cbi-section-descr"><%=self.description%></div>
|
||||
<input type="submit" class="cbi-button cbi-button-add" name="cbi.cns.<%=self.config%>.<%=self.section%>" value="<%:Add%>" />
|
||||
</fieldset>
|
||||
</div>
|
||||
<%- end %>
|
||||
<% end %>
|
||||
<!-- /nsection -->
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<fieldset class="cbi-section">
|
||||
<div class="cbi-section">
|
||||
<% if self.title and #self.title > 0 then -%>
|
||||
<legend><%=self.title%></legend>
|
||||
<%- end %>
|
||||
|
@ -25,8 +25,7 @@
|
|||
</div>
|
||||
<%- end %>
|
||||
</div>
|
||||
<br />
|
||||
</fieldset>
|
||||
</div>
|
||||
<%-
|
||||
if type(self.hidden) == "table" then
|
||||
for k, v in pairs(self.hidden) do
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
<% if self.title and #self.title > 0 then %><h2 name="content"><%=self.title%></h2><% end %>
|
||||
<% if self.description and #self.description > 0 then %><div class="cbi-map-descr"><%=self.description%></div><% end %>
|
||||
<% self:render_children() %>
|
||||
<br />
|
||||
</div>
|
||||
<%- if self.message then %>
|
||||
<div><%=self.message%></div>
|
||||
|
@ -30,9 +29,12 @@
|
|||
end
|
||||
%>
|
||||
<% if redirect then %>
|
||||
<div style="float:left">
|
||||
<input class="cbi-button cbi-button-link" type="button" value="<%:Back to Overview%>" onclick="location.href='<%=pcdata(redirect)%>'" />
|
||||
</div>
|
||||
<input class="cbi-button cbi-button-link" type="button" value="<%:Back to Overview%>" onclick="location.href='<%=pcdata(redirect)%>'" />
|
||||
<% end %>
|
||||
<%- if self.cancel ~= false and self.on_cancel then %>
|
||||
<input class="cbi-button cbi-button-link" type="submit" name="cbi.cancel" value="
|
||||
<%- if not self.cancel then -%><%-:Cancel-%><%-else-%><%=self.cancel%><%end-%>
|
||||
" />
|
||||
<% end %>
|
||||
<%- if self.flow and self.flow.skip then %>
|
||||
<input class="cbi-button cbi-button-skip" type="submit" name="cbi.skip" value="<%:Skip%>" />
|
||||
|
@ -46,11 +48,6 @@
|
|||
<input class="cbi-button cbi-button-reset" type="reset" value="
|
||||
<%- if not self.reset then -%><%-:Reset-%><%-else-%><%=self.reset%><%end-%>
|
||||
" />
|
||||
<% end %>
|
||||
<%- if self.cancel ~= false and self.on_cancel then %>
|
||||
<input class="cbi-button cbi-button-reset" type="submit" name="cbi.cancel" value="
|
||||
<%- if not self.cancel then -%><%-:Cancel-%><%-else-%><%=self.cancel%><%end-%>
|
||||
" />
|
||||
<% end %>
|
||||
</div>
|
||||
</form>
|
||||
|
|
|
@ -14,10 +14,14 @@ function width(o)
|
|||
end
|
||||
return ''
|
||||
end
|
||||
|
||||
local anonclass = (not self.anonymous or self.sectiontitle) and "named" or "anonymous"
|
||||
local titlename = ifattr(not self.anonymous or self.sectiontitle, "data-title", translate("Name"))
|
||||
|
||||
-%>
|
||||
|
||||
<!-- tblsection -->
|
||||
<fieldset class="cbi-section" id="cbi-<%=self.config%>-<%=self.sectiontype%>">
|
||||
<div class="cbi-section cbi-tblsection" id="cbi-<%=self.config%>-<%=self.sectiontype%>">
|
||||
<% if self.title and #self.title > 0 then -%>
|
||||
<legend><%=self.title%></legend>
|
||||
<%- end %>
|
||||
|
@ -25,121 +29,107 @@ end
|
|||
<input type="hidden" id="cbi.sts.<%=self.config%>.<%=self.sectiontype%>" name="cbi.sts.<%=self.config%>.<%=self.sectiontype%>" value="" />
|
||||
<%- end -%>
|
||||
<div class="cbi-section-descr"><%=self.description%></div>
|
||||
<div class="cbi-section-node">
|
||||
<%- local count = 0 -%>
|
||||
<div class="table cbi-section-table">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<%- if not self.anonymous then -%>
|
||||
<%- if self.sectionhead then -%>
|
||||
<div class="th cbi-section-table-cell"><%=self.sectionhead%></div>
|
||||
<%- else -%>
|
||||
<div class="th"> </div>
|
||||
<%- end -%>
|
||||
<%- count = count +1; end -%>
|
||||
<%- for i, k in pairs(self.children) do if not k.optional then -%>
|
||||
<div class="th cbi-section-table-cell"<%=width(k)%>>
|
||||
<%- if k.titleref then -%><a title="<%=self.titledesc or translate('Go to relevant configuration page')%>" class="cbi-title-ref" href="<%=k.titleref%>"><%- end -%>
|
||||
<%-=k.title-%>
|
||||
<%- if k.titleref then -%></a><%- end -%>
|
||||
</div>
|
||||
<%- count = count + 1; end; end; if self.sortable then -%>
|
||||
<div class="th cbi-section-table-cell"><%:Sort%></div>
|
||||
<%- count = count + 1; end; if self.extedit or self.addremove then -%>
|
||||
<div class="th cbi-section-table-cell"> </div>
|
||||
<%- count = count + 1; end -%>
|
||||
<%- local count = 0 -%>
|
||||
<div class="table cbi-section-table">
|
||||
<div class="tr cbi-section-table-titles <%=anonclass%>"<%=titlename%>>
|
||||
<%- for i, k in pairs(self.children) do if not k.optional then -%>
|
||||
<div class="th cbi-section-table-cell"<%=
|
||||
width(k) ..
|
||||
attr("data-type", k.template and k.template:gsub("^.+/", "") or "")
|
||||
%>>
|
||||
<%- if k.titleref then -%><a title="<%=self.titledesc or translate('Go to relevant configuration page')%>" class="cbi-title-ref" href="<%=k.titleref%>"><%- end -%>
|
||||
<%-=k.title-%>
|
||||
<%- if k.titleref then -%></a><%- end -%>
|
||||
</div>
|
||||
<div class="tr cbi-section-table-descr">
|
||||
<%- if not self.anonymous then -%>
|
||||
<%- if self.sectiondesc then -%>
|
||||
<div class="th cbi-section-table-cell"><%=self.sectiondesc%></div>
|
||||
<%- else -%>
|
||||
<div class="th"></div>
|
||||
<%- end -%>
|
||||
<%- end -%>
|
||||
<%- for i, k in pairs(self.children) do if not k.optional then -%>
|
||||
<div class="th cbi-section-table-cell"<%=width(k)%>><%=k.description%></div>
|
||||
<%- end; end; if self.sortable then -%>
|
||||
<div class="th cbi-section-table-cell"></div>
|
||||
<%- end; if self.extedit or self.addremove then -%>
|
||||
<div class="th cbi-section-table-cell"></div>
|
||||
<%- end -%>
|
||||
</div>
|
||||
<%- local isempty = true
|
||||
for i, k in ipairs(self:cfgsections()) do
|
||||
section = k
|
||||
isempty = false
|
||||
scope = { valueheader = "cbi/cell_valueheader", valuefooter = "cbi/cell_valuefooter" }
|
||||
-%>
|
||||
<div class="tr cbi-section-table-row<% if self.extedit or self.rowcolors then %> cbi-rowstyle-<%=rowstyle()%><% end %>" id="cbi-<%=self.config%>-<%=section%>">
|
||||
<% if not self.anonymous then -%>
|
||||
<div class="th"><h3><%=(type(self.sectiontitle) == "function") and self:sectiontitle(section) or k%></h3></div>
|
||||
<%- end %>
|
||||
<%- count = count + 1; end; end; if self.sortable or self.extedit or self.addremove then -%>
|
||||
<div class="th cbi-section-table-cell cbi-section-actions"></div>
|
||||
<%- count = count + 1; end -%>
|
||||
</div>
|
||||
<div class="tr cbi-section-table-descr <%=anonclass%>">
|
||||
<%- for i, k in pairs(self.children) do if not k.optional then -%>
|
||||
<div class="th cbi-section-table-cell"<%=
|
||||
width(k) ..
|
||||
attr("data-type", k.template and k.template:gsub("^.+/", "") or "")
|
||||
%>><%=k.description%></div>
|
||||
<%- end; end; if self.sortable or self.extedit or self.addremove then -%>
|
||||
<div class="th cbi-section-table-cell cbi-section-actions"></div>
|
||||
<%- end -%>
|
||||
</div>
|
||||
<%- local isempty, i, k = true, nil, nil
|
||||
for i, k in ipairs(self:cfgsections()) do
|
||||
isempty = false
|
||||
|
||||
|
||||
<%-
|
||||
for k, node in ipairs(self.children) do
|
||||
if not node.optional then
|
||||
node:render(section, scope or {})
|
||||
end
|
||||
local section = k
|
||||
local sectionname = striptags((type(self.sectiontitle) == "function") and self:sectiontitle(section) or k)
|
||||
local sectiontitle = ifattr(sectionname and (not self.anonymous or self.sectiontitle), "data-title", sectionname)
|
||||
local colorclass = (self.extedit or self.rowcolors) and " cbi-rowstyle-%d" % rowstyle() or ""
|
||||
local scope = {
|
||||
valueheader = "cbi/cell_valueheader",
|
||||
valuefooter = "cbi/cell_valuefooter"
|
||||
}
|
||||
-%>
|
||||
<div class="tr cbi-section-table-row<%=colorclass%>" id="cbi-<%=self.config%>-<%=section%>"<%=sectiontitle%>>
|
||||
<%-
|
||||
local node
|
||||
for k, node in ipairs(self.children) do
|
||||
if not node.optional then
|
||||
node:render(section, scope or {})
|
||||
end
|
||||
-%>
|
||||
end
|
||||
-%>
|
||||
|
||||
<%- if self.sortable then -%>
|
||||
<div class="td cbi-section-table-cell">
|
||||
<input class="cbi-button cbi-button-up" type="button" value="" onclick="return cbi_row_swap(this, true, 'cbi.sts.<%=self.config%>.<%=self.sectiontype%>')" alt="<%:Move up%>" title="<%:Move up%>" />
|
||||
<input class="cbi-button cbi-button-down" type="button" value="" onclick="return cbi_row_swap(this, false, 'cbi.sts.<%=self.config%>.<%=self.sectiontype%>')" alt="<%:Move down%>" title="<%:Move down%>" />
|
||||
</div>
|
||||
<%- end -%>
|
||||
|
||||
<%- if self.extedit or self.addremove then -%>
|
||||
<div class="td cbi-section-table-cell">
|
||||
<%- if self.extedit then -%>
|
||||
<input class="cbi-button cbi-button-edit" type="button" value="<%:Edit%>"
|
||||
<%- if type(self.extedit) == "string" then
|
||||
%> onclick="location.href='<%=self.extedit:format(section)%>'"
|
||||
<%- elseif type(self.extedit) == "function" then
|
||||
%> onclick="location.href='<%=self:extedit(section)%>'"
|
||||
<%- end
|
||||
%> alt="<%:Edit%>" title="<%:Edit%>" />
|
||||
<%- end; if self.addremove then %>
|
||||
<input class="cbi-button cbi-button-remove" type="submit" value="<%:Delete%>" onclick="this.form.cbi_state='del-section'; return true" name="cbi.rts.<%=self.config%>.<%=k%>" alt="<%:Delete%>" title="<%:Delete%>" />
|
||||
<%- end -%>
|
||||
</div>
|
||||
<%- end -%>
|
||||
</div>
|
||||
<%- end -%>
|
||||
|
||||
<%- if isempty then -%>
|
||||
<div class="tr cbi-section-table-row">
|
||||
<div class="td" colspan="<%=count%>"><em><br /><%:This section contains no values yet%></em></div>
|
||||
</div>
|
||||
<%- if self.sortable or self.extedit or self.addremove then -%>
|
||||
<div class="td cbi-section-table-cell nowrap cbi-section-actions">
|
||||
<%- if self.sortable then -%>
|
||||
<input class="cbi-button cbi-button-up" type="button" value="<%:Up%>" onclick="return cbi_row_swap(this, true, 'cbi.sts.<%=self.config%>.<%=self.sectiontype%>')" title="<%:Move up%>" />
|
||||
<input class="cbi-button cbi-button-down" type="button" value="<%:Down%>" onclick="return cbi_row_swap(this, false, 'cbi.sts.<%=self.config%>.<%=self.sectiontype%>')" title="<%:Move down%>" />
|
||||
<% end; if self.extedit then -%>
|
||||
<input class="cbi-button cbi-button-edit" type="button" value="<%:Edit%>"
|
||||
<%- if type(self.extedit) == "string" then
|
||||
%> onclick="location.href='<%=self.extedit:format(section)%>'"
|
||||
<%- elseif type(self.extedit) == "function" then
|
||||
%> onclick="location.href='<%=self:extedit(section)%>'"
|
||||
<%- end
|
||||
%> alt="<%:Edit%>" title="<%:Edit%>" />
|
||||
<% end; if self.addremove then %>
|
||||
<input class="cbi-button cbi-button-remove" type="submit" value="<%:Delete%>" onclick="this.form.cbi_state='del-section'; return true" name="cbi.rts.<%=self.config%>.<%=k%>" alt="<%:Delete%>" title="<%:Delete%>" />
|
||||
<%- end -%>
|
||||
</div>
|
||||
<%- end -%>
|
||||
</div>
|
||||
<%- end -%>
|
||||
|
||||
<% if self.error then %>
|
||||
<div class="cbi-section-error">
|
||||
<ul><% for _, c in pairs(self.error) do for _, e in ipairs(c) do -%>
|
||||
<li><%=pcdata(e):gsub("\n","<br />")%></li>
|
||||
<%- end end %></ul>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<%- if self.addremove then -%>
|
||||
<% if self.template_addremove then include(self.template_addremove) else -%>
|
||||
<div class="cbi-section-create cbi-tblsection-create">
|
||||
<% if self.anonymous then %>
|
||||
<input class="cbi-button cbi-button-add" type="submit" value="<%:Add%>" name="cbi.cts.<%=self.config%>.<%=self.sectiontype%>.<%=section%>" title="<%:Add%>" />
|
||||
<% else %>
|
||||
<% if self.invalid_cts then -%><div class="cbi-section-error"><% end %>
|
||||
<input type="text" class="cbi-section-create-name" id="cbi.cts.<%=self.config%>.<%=self.sectiontype%>.<%=section%>" name="cbi.cts.<%=self.config%>.<%=self.sectiontype%>.<%=section%>" data-type="uciname" data-optional="true" />
|
||||
<input class="cbi-button cbi-button-add" type="submit" onclick="this.form.cbi_state='add-section'; return true" value="<%:Add%>" title="<%:Add%>" />
|
||||
<% if self.invalid_cts then -%>
|
||||
<br /><%:Invalid%></div>
|
||||
<%- end %>
|
||||
<% end %>
|
||||
</div>
|
||||
<%- end %>
|
||||
<%- if isempty then -%>
|
||||
<div class="tr cbi-section-table-row placeholder">
|
||||
<div class="td"><em><%:This section contains no values yet%></em></div>
|
||||
</div>
|
||||
<%- end -%>
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<% if self.error then %>
|
||||
<div class="cbi-section-error">
|
||||
<ul><% for _, c in pairs(self.error) do for _, e in ipairs(c) do -%>
|
||||
<li><%=pcdata(e):gsub("\n","<br />")%></li>
|
||||
<%- end end %></ul>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<%- if self.addremove then -%>
|
||||
<% if self.template_addremove then include(self.template_addremove) else -%>
|
||||
<div class="cbi-section-create cbi-tblsection-create">
|
||||
<% if self.anonymous then %>
|
||||
<input class="cbi-button cbi-button-add" type="submit" value="<%:Add%>" name="cbi.cts.<%=self.config%>.<%=self.sectiontype%>.<%=section%>" title="<%:Add%>" />
|
||||
<% else %>
|
||||
<% if self.invalid_cts then -%>
|
||||
<div class="cbi-section-error"><%:Invalid%></div>
|
||||
<%- end %>
|
||||
<div>
|
||||
<input type="text" class="cbi-section-create-name" id="cbi.cts.<%=self.config%>.<%=self.sectiontype%>." name="cbi.cts.<%=self.config%>.<%=self.sectiontype%>." data-type="uciname" data-optional="true" />
|
||||
</div>
|
||||
<input class="cbi-button cbi-button-add" type="submit" onclick="this.form.cbi_state='add-section'; return true" value="<%:Add%>" title="<%:Add%>" />
|
||||
<% end %>
|
||||
</div>
|
||||
<%- end %>
|
||||
<%- end -%>
|
||||
</div>
|
||||
<!-- /tblsection -->
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<fieldset class="cbi-section" id="cbi-<%=self.config%>-<%=self.sectiontype%>">
|
||||
<div class="cbi-section" id="cbi-<%=self.config%>-<%=self.sectiontype%>">
|
||||
<% if self.title and #self.title > 0 then -%>
|
||||
<legend><%=self.title%></legend>
|
||||
<%- end %>
|
||||
|
@ -20,10 +20,9 @@
|
|||
|
||||
<%+cbi/tabmenu%>
|
||||
|
||||
<fieldset class="cbi-section-node<% if self.tabs then %> cbi-section-node-tabbed<% end %>" id="cbi-<%=self.config%>-<%=section%>">
|
||||
<div class="cbi-section-node<% if self.tabs then %> cbi-section-node-tabbed<% end %>" id="cbi-<%=self.config%>-<%=section%>">
|
||||
<%+cbi/ucisection%>
|
||||
</fieldset>
|
||||
<br />
|
||||
</div>
|
||||
<%- end %>
|
||||
|
||||
<% if isempty then -%>
|
||||
|
@ -36,14 +35,15 @@
|
|||
<% if self.anonymous then -%>
|
||||
<input type="submit" class="cbi-button cbi-button-add" name="cbi.cts.<%=self.config%>.<%=self.sectiontype%>.<%=section%>" value="<%:Add%>" />
|
||||
<%- else -%>
|
||||
<% if self.invalid_cts then -%><div class="cbi-section-error"><% end %>
|
||||
<input type="text" class="cbi-section-create-name" id="cbi.cts.<%=self.config%>.<%=self.sectiontype%>.<%=section%>" name="cbi.cts.<%=self.config%>.<%=self.sectiontype%>.<%=section%>" data-type="uciname" data-optional="true" />
|
||||
<input type="submit" class="cbi-button cbi-button-add" onclick="this.form.cbi_state='add-section'; return true" value="<%:Add%>" />
|
||||
<% if self.invalid_cts then -%>
|
||||
<br /><%:Invalid%></div>
|
||||
<div class="cbi-section-error"><%:Invalid%></div>
|
||||
<%- end %>
|
||||
<div>
|
||||
<input type="text" class="cbi-section-create-name" id="cbi.cts.<%=self.config%>.<%=self.sectiontype%>." name="cbi.cts.<%=self.config%>.<%=self.sectiontype%>." data-type="uciname" data-optional="true" />
|
||||
</div>
|
||||
<input class="cbi-button cbi-button-add" type="submit" onclick="this.form.cbi_state='add-section'; return true" value="<%:Add%>" title="<%:Add%>" />
|
||||
<%- end %>
|
||||
</div>
|
||||
<%- end %>
|
||||
<%- end %>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<%:Uploaded File%> (<%=t.byte_format(s.size)%>)
|
||||
<% if self.unsafeupload then %>
|
||||
<input type="hidden"<%= attr("value", v) .. attr("name", cbid) .. attr("id", cbid) %> />
|
||||
<input class="cbi-button cbi-input-image" type="image" value="<%:Replace entry%>" name="cbi.rlf.<%=section .. "." .. self.option%>" alt="<%:Replace entry%>" title="<%:Replace entry%>" src="<%=resource%>/cbi/reload.gif" />
|
||||
<input class="cbi-button cbi-button-image" type="image" value="<%:Replace entry%>" name="cbi.rlf.<%=section .. "." .. self.option%>" alt="<%:Replace entry%>" title="<%:Replace entry%>" src="<%=resource%>/cbi/reload.gif" />
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
|
|
|
@ -18,23 +18,23 @@
|
|||
<div class="cbi-map-descr">
|
||||
<%:Please enter your username and password.%>
|
||||
</div>
|
||||
<fieldset class="cbi-section"><fieldset class="cbi-section-node">
|
||||
<div class="cbi-section"><div class="cbi-section-node">
|
||||
<div class="cbi-value">
|
||||
<label class="cbi-value-title"><%:Username%></label>
|
||||
<div class="cbi-value-field">
|
||||
<input class="cbi-input-user" type="text" name="luci_username" value="<%=duser%>" />
|
||||
<input class="cbi-input-text" type="text" name="luci_username" value="<%=duser%>" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="cbi-value cbi-value-last">
|
||||
<label class="cbi-value-title"><%:Password%></label>
|
||||
<div class="cbi-value-field">
|
||||
<input class="cbi-input-password" type="password" name="luci_password" />
|
||||
<input class="cbi-input-text" type="password" name="luci_password" />
|
||||
</div>
|
||||
</div>
|
||||
</fieldset></fieldset>
|
||||
</div></div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div class="cbi-page-actions">
|
||||
<input type="submit" value="<%:Login%>" class="cbi-button cbi-button-apply" />
|
||||
<input type="reset" value="<%:Reset%>" class="cbi-button cbi-button-reset" />
|
||||
</div>
|
||||
|
|
|
@ -49,6 +49,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Càrrega d'1 minut:"
|
||||
|
||||
|
@ -761,9 +764,6 @@ msgstr ""
|
|||
"Personalitza el comportament dels <abbr title=\"Light Emitting Diode\">LED</"
|
||||
"abbr>s del dispositiu, si és possible."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "Arrendaments DHCP"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "Servidor DHCP"
|
||||
|
||||
|
@ -776,9 +776,6 @@ msgstr "Client DHCP"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "Opcions DHCP"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "Arrendaments DHCPv6"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -966,6 +963,9 @@ msgstr ""
|
|||
"No reenviïs les peticions <abbr title=\"Domain Name System\">DNS</abbr> "
|
||||
"sense el nom <abbr title=\"Domain Name System\">DNS</abbr>"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Descarrega i instal·la el paquet"
|
||||
|
||||
|
@ -1079,6 +1079,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1111,6 +1114,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Esborrant..."
|
||||
|
||||
|
@ -1293,7 +1302,7 @@ msgstr "Espai lliure"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2590,12 +2599,12 @@ msgstr ""
|
|||
"\"Dynamic Host Configuration Protocol\">DHCP</abbr>"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2603,12 +2612,12 @@ msgid "Really reset all changes?"
|
|||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2946,9 +2955,6 @@ msgid ""
|
|||
"instructions."
|
||||
msgstr ""
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Ordena"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Origen"
|
||||
|
||||
|
@ -3454,6 +3460,9 @@ msgstr "Canvis sense desar"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Tipus de protocol no suportat."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "Actualitza les llistes"
|
||||
|
||||
|
@ -3714,6 +3723,9 @@ msgstr ""
|
|||
msgid "bridged"
|
||||
msgstr "pontejat"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "crea:"
|
||||
|
||||
|
@ -3751,9 +3763,6 @@ msgstr ""
|
|||
msgid "half-duplex"
|
||||
msgstr ""
|
||||
|
||||
msgid "help"
|
||||
msgstr "ajuda"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "amagat"
|
||||
|
||||
|
@ -3802,6 +3811,9 @@ msgstr "engegat"
|
|||
msgid "open"
|
||||
msgstr "obert"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3853,6 +3865,18 @@ msgstr "sí"
|
|||
msgid "« Back"
|
||||
msgstr "« Enrere"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "Arrendaments DHCP"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "Arrendaments DHCPv6"
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Ordena"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "ajuda"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "Estat WAN IPv4"
|
||||
|
||||
|
|
|
@ -47,6 +47,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Zatížení za 1 minutu:"
|
||||
|
||||
|
@ -755,9 +758,6 @@ msgstr ""
|
|||
"Upraví chování <abbr title=\"Light Emitting Diode\">LED</abbr> diod zařízení "
|
||||
"pokud je to možné."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "DHCP výpůjčky"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "DHCP server"
|
||||
|
||||
|
@ -770,9 +770,6 @@ msgstr "DHCP klient"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "Volby DHCP"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "DHCPv6 přidělené IP"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -964,6 +961,9 @@ msgstr ""
|
|||
"Nepřeposílat <abbr title=\"Domain Name System\">DNS</abbr> dotazy bez <abbr "
|
||||
"title=\"Domain Name System\">DNS</abbr> jména"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Stáhnout a nainstalovat balíček"
|
||||
|
||||
|
@ -1079,6 +1079,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr "Povolit tento přípojný bod"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "Povolit tento swapovací oddíl"
|
||||
|
||||
|
@ -1111,6 +1114,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Odstraňování..."
|
||||
|
||||
|
@ -1295,7 +1304,7 @@ msgstr "Volné místo"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2601,15 +2610,12 @@ msgstr ""
|
|||
"Host Configuration Protocol\">DHCP</abbr> Serveru"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
"Opravdu odstranit toto rozhraní? Odstranění nelze vrátit zpět!\n"
|
||||
"Můžete ztratit přístup k zařízení, pokud jste připojeni prostřednictvím "
|
||||
"tohoto rozhraní."
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"Opravdu odstranit bezdrátovou síť? Odstranění nelze vrátit zpět!\n"
|
||||
|
@ -2619,17 +2625,13 @@ msgstr ""
|
|||
msgid "Really reset all changes?"
|
||||
msgstr "Opravdu resetovat všechny změny?"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"Opravdu vypnout síť ?\n"
|
||||
"Můžete ztratit přístup k zařízení, pokud jste připojeni prostřednictvím "
|
||||
"tohoto rozhraní."
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"Opravdu vypnout rozhraní \"%s\" ?\n"
|
||||
|
@ -2975,9 +2977,6 @@ msgstr ""
|
|||
"systému. Nový obraz firmwaru musí být zapsán ručně. Prosím, obraťte se na "
|
||||
"wiki pro zařízení specifické instalační instrukce."
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Seřadit"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Zdroj"
|
||||
|
||||
|
@ -3494,6 +3493,9 @@ msgstr "Neuložené změny"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Nepodporovaný typ protokolu."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "Aktualizovat seznamy"
|
||||
|
||||
|
@ -3755,6 +3757,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "přemostěný"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3792,9 +3797,6 @@ msgstr "plný-duplex"
|
|||
msgid "half-duplex"
|
||||
msgstr "poloviční-duplex"
|
||||
|
||||
msgid "help"
|
||||
msgstr "pomoc"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "skrytý"
|
||||
|
||||
|
@ -3843,6 +3845,9 @@ msgstr "on"
|
|||
msgid "open"
|
||||
msgstr ""
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3894,6 +3899,35 @@ msgstr "ano"
|
|||
msgid "« Back"
|
||||
msgstr "« Zpět"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "DHCP výpůjčky"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "DHCPv6 přidělené IP"
|
||||
|
||||
#~ 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 ""
|
||||
#~ "Opravdu odstranit toto rozhraní? Odstranění nelze vrátit zpět!\n"
|
||||
#~ "Můžete ztratit přístup k zařízení, pokud jste připojeni prostřednictvím "
|
||||
#~ "tohoto rozhraní."
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "Really shut down network? You might lose access to this device if you are "
|
||||
#~ "connected via this interface."
|
||||
#~ msgstr ""
|
||||
#~ "Opravdu vypnout síť ?\n"
|
||||
#~ "Můžete ztratit přístup k zařízení, pokud jste připojeni prostřednictvím "
|
||||
#~ "tohoto rozhraní."
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Seřadit"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "pomoc"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "Stav IPv4 WAN"
|
||||
|
||||
|
|
|
@ -49,6 +49,9 @@ msgstr "-- anhand Label selektieren --"
|
|||
msgid "-- match by uuid --"
|
||||
msgstr "-- UUID vergleichen --"
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Systemlast (1 Minute):"
|
||||
|
||||
|
@ -777,9 +780,6 @@ msgid ""
|
|||
"\">LED</abbr>s if possible."
|
||||
msgstr "Passt das Verhalten der Geräte-LEDs an - wenn dies möglich ist."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "DHCP-Leases"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "DHCP-Server"
|
||||
|
||||
|
@ -792,9 +792,6 @@ msgstr "DHCP Client"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "DHCP-Optionen"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "DHCPv6-Leases"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr "DHCPv6 Client"
|
||||
|
||||
|
@ -987,6 +984,9 @@ msgid ""
|
|||
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
|
||||
msgstr "Anfragen ohne Domainnamen nicht weiterleiten"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Paket herunterladen und installieren"
|
||||
|
||||
|
@ -1104,6 +1104,9 @@ msgstr "Das DF-Bit (Nicht fragmentieren) auf gekapselten Paketen setzen."
|
|||
msgid "Enable this mount"
|
||||
msgstr "Diesen Mountpunkt aktivieren"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "Diesen Auslagerungsspeicher aktivieren"
|
||||
|
||||
|
@ -1138,6 +1141,12 @@ msgstr "Entfernter Server"
|
|||
msgid "Endpoint Port"
|
||||
msgstr "Entfernter Port"
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Lösche..."
|
||||
|
||||
|
@ -1328,10 +1337,10 @@ msgstr "Freier Platz"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
"Weitere Informationen zu WireGuard-Schnittstellen und Peers unter <a href="
|
||||
"\"http://wireguard.io\">wireguard.io</a>."
|
||||
"\"http://wireguard.com\">wireguard.com</a>."
|
||||
|
||||
msgid "GHz"
|
||||
msgstr "GHz"
|
||||
|
@ -2681,16 +2690,12 @@ msgid ""
|
|||
msgstr "Lese Informationen aus /etc/ethers um den DHCP-Server zu konfigurieren"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
"Diese Schnittstelle wirklich löschen? Der Schritt kann nicht rückgängig "
|
||||
"gemacht werden!\n"
|
||||
"Der Zugriff auf das Gerät könnte verlorengehen wenn Sie über diese "
|
||||
"Schnittstelle verbunden sind."
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"Dieses Drahtlosnetzwerk wirklich löschen? Der Schritt kann nicht rückgängig "
|
||||
|
@ -2701,17 +2706,13 @@ msgstr ""
|
|||
msgid "Really reset all changes?"
|
||||
msgstr "Sollen wirklich alle Änderungen verworfen werden?"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"Das Netzwerk wirklich herunterfahren?\n"
|
||||
"Der Zugriff auf das Gerät könnte verlorengehen wenn Sie über diese "
|
||||
"Schnittstelle verbunden sind."
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"Die Schnitstelle \"%s\" wirklich herunterfahren?\n"
|
||||
|
@ -3070,9 +3071,6 @@ msgstr ""
|
|||
"geflasht werden. Weitere Informationen sowie gerätespezifische "
|
||||
"Installationsanleitungen entnehmen Sie bitte dem Wiki."
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Sortieren"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Quelle"
|
||||
|
||||
|
@ -3623,6 +3621,9 @@ msgstr "Ungespeicherte Änderungen"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Nicht unterstützter Protokolltyp."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "Listen aktualisieren"
|
||||
|
||||
|
@ -3893,6 +3894,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "bridged"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "erstelle:"
|
||||
|
||||
|
@ -3928,9 +3932,6 @@ msgstr "Voll-Duplex"
|
|||
msgid "half-duplex"
|
||||
msgstr "Halb-Duplex"
|
||||
|
||||
msgid "help"
|
||||
msgstr "Hilfe"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "versteckt"
|
||||
|
||||
|
@ -3979,6 +3980,9 @@ msgstr "ein"
|
|||
msgid "open"
|
||||
msgstr "offen"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr "Overlay"
|
||||
|
||||
|
@ -4030,6 +4034,36 @@ msgstr "ja"
|
|||
msgid "« Back"
|
||||
msgstr "« Zurück"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "DHCP-Leases"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "DHCPv6-Leases"
|
||||
|
||||
#~ 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 ""
|
||||
#~ "Diese Schnittstelle wirklich löschen? Der Schritt kann nicht rückgängig "
|
||||
#~ "gemacht werden!\n"
|
||||
#~ "Der Zugriff auf das Gerät könnte verlorengehen wenn Sie über diese "
|
||||
#~ "Schnittstelle verbunden sind."
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "Really shut down network? You might lose access to this device if you are "
|
||||
#~ "connected via this interface."
|
||||
#~ msgstr ""
|
||||
#~ "Das Netzwerk wirklich herunterfahren?\n"
|
||||
#~ "Der Zugriff auf das Gerät könnte verlorengehen wenn Sie über diese "
|
||||
#~ "Schnittstelle verbunden sind."
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Sortieren"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "Hilfe"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "IPv4 WAN Status"
|
||||
|
||||
|
|
|
@ -49,6 +49,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Φορτίο 1 λεπτού:"
|
||||
|
||||
|
@ -764,9 +767,6 @@ msgstr ""
|
|||
"Ρυθμίζει, αν είναι δυνατόν, την συμπεριφορά των <abbr title=\"Light Emitting "
|
||||
"Diode\">LED</abbr> της συσκευής."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "DHCP Leases"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "Εξυπηρετητής DHCP"
|
||||
|
||||
|
@ -779,9 +779,6 @@ msgstr "Πελάτης DHCP"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "Επιλογές DHCP"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -975,6 +972,9 @@ msgstr ""
|
|||
"Να μην προωθούνται ερωτήματα <abbr title=\"Domain Name System\">DNS</abbr> "
|
||||
"χωρίς όνομα τομέα <abbr title=\"Domain Name System\">DNS</abbr>"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Κατέβασμα και εγκατάσταση πακέτου"
|
||||
|
||||
|
@ -1091,6 +1091,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr "Ενεργοποίηση αυτής της προσάρτησης"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "Ενεργοποίηση αυτής της swap"
|
||||
|
||||
|
@ -1123,6 +1126,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Διαγράφεται..."
|
||||
|
||||
|
@ -1309,7 +1318,7 @@ msgstr "Ελεύθερος χώρος"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2607,12 +2616,12 @@ msgstr ""
|
|||
"εξυπηρετητή <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2620,12 +2629,12 @@ msgid "Really reset all changes?"
|
|||
msgstr "Αρχικοποίηση όλων των αλλαγών;"
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2964,9 +2973,6 @@ msgid ""
|
|||
"instructions."
|
||||
msgstr ""
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Ταξινόμηση"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Πηγή"
|
||||
|
||||
|
@ -3453,6 +3459,9 @@ msgstr "Μη-αποθηκευμένες Αλλαγές"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr ""
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3706,6 +3715,9 @@ msgstr ""
|
|||
msgid "bridged"
|
||||
msgstr ""
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3744,9 +3756,6 @@ msgstr ""
|
|||
msgid "half-duplex"
|
||||
msgstr ""
|
||||
|
||||
msgid "help"
|
||||
msgstr "βοήθεια"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3795,6 +3804,9 @@ msgstr "ανοιχτό"
|
|||
msgid "open"
|
||||
msgstr ""
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3846,6 +3858,15 @@ msgstr "ναι"
|
|||
msgid "« Back"
|
||||
msgstr "« Πίσω"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "DHCP Leases"
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Ταξινόμηση"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "βοήθεια"
|
||||
|
||||
#~ msgid "IPv6 WAN Status"
|
||||
#~ msgstr "Κατάσταση IPv6 WAN"
|
||||
|
||||
|
|
|
@ -49,6 +49,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "1 Minute Load:"
|
||||
|
||||
|
@ -751,9 +754,6 @@ msgstr ""
|
|||
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
|
||||
"\">LED</abbr>s if possible."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "DHCP Leases"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "DHCP Server"
|
||||
|
||||
|
@ -766,9 +766,6 @@ msgstr "DHCP client"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "DHCP-Options"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -957,6 +954,9 @@ msgstr ""
|
|||
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests "
|
||||
"without <abbr title=\"Domain Name System\">DNS</abbr>-Name"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Download and install package"
|
||||
|
||||
|
@ -1070,6 +1070,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1102,6 +1105,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr ""
|
||||
|
||||
|
@ -1284,7 +1293,7 @@ msgstr ""
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2573,12 +2582,12 @@ msgstr ""
|
|||
"Configuration Protocol\">DHCP</abbr>-Server"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2586,12 +2595,12 @@ msgid "Really reset all changes?"
|
|||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2928,9 +2937,6 @@ msgid ""
|
|||
"instructions."
|
||||
msgstr ""
|
||||
|
||||
msgid "Sort"
|
||||
msgstr ""
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Source"
|
||||
|
||||
|
@ -3410,6 +3416,9 @@ msgstr "Unsaved Changes"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr ""
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3664,6 +3673,9 @@ msgstr ""
|
|||
msgid "bridged"
|
||||
msgstr ""
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3701,9 +3713,6 @@ msgstr ""
|
|||
msgid "half-duplex"
|
||||
msgstr ""
|
||||
|
||||
msgid "help"
|
||||
msgstr "help"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3752,6 +3761,9 @@ msgstr ""
|
|||
msgid "open"
|
||||
msgstr ""
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3803,6 +3815,12 @@ msgstr ""
|
|||
msgid "« Back"
|
||||
msgstr "« Back"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "DHCP Leases"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "help"
|
||||
|
||||
#~ msgid "Apply"
|
||||
#~ msgstr "Apply"
|
||||
|
||||
|
|
|
@ -49,6 +49,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Carga a 1 minuto:"
|
||||
|
||||
|
@ -760,9 +763,6 @@ msgstr ""
|
|||
"Personaliza el comportamiento de los <abbr title=\"Light Emitting Diode"
|
||||
"\">LED</abbr>s del dispositivo, si es posible."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "Cesiones DHCP"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "Servidor DHCP"
|
||||
|
||||
|
@ -775,9 +775,6 @@ msgstr "Cliente DHCP"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "Opciones de DHCP"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "Cesiones DHCPv6"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -970,6 +967,9 @@ msgstr ""
|
|||
"No reenviar peticiones de <abbr title=\"Domain Name System\">DNS</abbr> sin "
|
||||
"un nombre de <abbr title=\"Domain Name System\">DNS</abbr>"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Descargar e instalar paquete"
|
||||
|
||||
|
@ -1085,6 +1085,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr "Active este punto de montaje"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "Activar este swap"
|
||||
|
||||
|
@ -1117,6 +1120,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Borrando..."
|
||||
|
||||
|
@ -1303,7 +1312,7 @@ msgstr "Espacio libre"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2615,16 +2624,12 @@ msgstr ""
|
|||
"\"Dynamic Host Configuration Protocol\">DHCP</abbr>"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
"¿Está seguro de borrar esta interfaz?. ¡No será posible deshacer el "
|
||||
"borrado!\n"
|
||||
"Puede perder el acceso a este dispositivo si está conectado por esta "
|
||||
"interfaz."
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"¿Está seguro de borrar esta red inalámbrica?. ¡No será posible deshacer el "
|
||||
|
@ -2634,16 +2639,13 @@ msgstr ""
|
|||
msgid "Really reset all changes?"
|
||||
msgstr "¿Está seguro de querer reiniciar todos los cambios?"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"¿Está seguro de querer apagar esta red?.\n"
|
||||
"Puede perder el acceso a este dispositivo si está conectado por esta red."
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"¿Está seguro de apagar la interfaz \"%s\"?.\n"
|
||||
|
@ -2988,9 +2990,6 @@ msgstr ""
|
|||
"grabarse manualmente. Por favor, mire el wiki para instrucciones de "
|
||||
"instalación específicas."
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Ordenar"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Origen"
|
||||
|
||||
|
@ -3519,6 +3518,9 @@ msgstr "Cambios no guardados"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Tipo de protocolo no soportado."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "Actualizar listas"
|
||||
|
||||
|
@ -3782,6 +3784,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "puenteado"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "crear:"
|
||||
|
||||
|
@ -3819,9 +3824,6 @@ msgstr "full dúplex"
|
|||
msgid "half-duplex"
|
||||
msgstr "half dúplex"
|
||||
|
||||
msgid "help"
|
||||
msgstr "ayuda"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "oculto"
|
||||
|
||||
|
@ -3870,6 +3872,9 @@ msgstr "activo"
|
|||
msgid "open"
|
||||
msgstr "abierto"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3921,6 +3926,35 @@ msgstr "sí"
|
|||
msgid "« Back"
|
||||
msgstr "« Volver"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "Cesiones DHCP"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "Cesiones 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 ""
|
||||
#~ "¿Está seguro de borrar esta interfaz?. ¡No será posible deshacer el "
|
||||
#~ "borrado!\n"
|
||||
#~ "Puede perder el acceso a este dispositivo si está conectado por esta "
|
||||
#~ "interfaz."
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "Really shut down network? You might lose access to this device if you are "
|
||||
#~ "connected via this interface."
|
||||
#~ msgstr ""
|
||||
#~ "¿Está seguro de querer apagar esta red?.\n"
|
||||
#~ "Puede perder el acceso a este dispositivo si está conectado por esta red."
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Ordenar"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "ayuda"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "Estado de la WAN IPv4"
|
||||
|
||||
|
|
|
@ -49,6 +49,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Charge sur 1 minute :"
|
||||
|
||||
|
@ -767,9 +770,6 @@ msgstr ""
|
|||
"Personnaliser le comportement des <abbr title=\"Diode Électro-Luminescente"
|
||||
"\">DEL</abbr>s si possible."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "Baux DHCP"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "Serveur DHCP"
|
||||
|
||||
|
@ -782,9 +782,6 @@ msgstr "client DHCP"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "Options DHCP"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "Bails DHCPv6"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -980,6 +977,9 @@ msgstr ""
|
|||
"Ne pas transmettre de requêtes <abbr title=\"Domain Name System\">DNS</abbr> "
|
||||
"sans nom <abbr title=\"Domain Name System\">DNS</abbr>"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Télécharge et installe le paquet"
|
||||
|
||||
|
@ -1095,6 +1095,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr "Activer ce montage"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "Activer cette mémoire d'échange (swap)"
|
||||
|
||||
|
@ -1129,6 +1132,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Effacement…"
|
||||
|
||||
|
@ -1314,7 +1323,7 @@ msgstr "Espace libre"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2626,16 +2635,12 @@ msgid ""
|
|||
msgstr "Lire /etc/ethers pour configurer le serveur DHCP"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
"Voulez-vous vraiment supprimer cette interface? L'effacement ne peut être "
|
||||
"annulé!\n"
|
||||
"Vous pourriez perdre l'accès à l'équipement si vous y êtes connecté par "
|
||||
"cette interface."
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"Voulez-vous vraiment supprimer ce réseau sans-fil? L'effacement ne peut être "
|
||||
|
@ -2647,15 +2652,12 @@ msgid "Really reset all changes?"
|
|||
msgstr "Voulez-vous vraiment ré-initialiser toutes les modifications ?"
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"Voulez-vous vraiment arrêter l'interface %s ?\n"
|
||||
"Vous pourriez perdre l'accès à l'équipement si vous y êtes connecté par "
|
||||
"cette interface."
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"Voulez-vous vraiment arrêter l'interface %s ?\n"
|
||||
|
@ -3003,9 +3005,6 @@ msgstr ""
|
|||
"au wiki pour connaître les instructions d'installation spécifiques à votre "
|
||||
"matériel."
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Trier"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Source"
|
||||
|
||||
|
@ -3537,6 +3536,9 @@ msgstr "Changements non appliqués"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Type de protocole non pris en charge."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "Mettre les listes à jour"
|
||||
|
||||
|
@ -3802,6 +3804,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "ponté"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "créer:"
|
||||
|
||||
|
@ -3837,9 +3842,6 @@ msgstr "full-duplex"
|
|||
msgid "half-duplex"
|
||||
msgstr "half-duplex"
|
||||
|
||||
msgid "help"
|
||||
msgstr "aide"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "cacher"
|
||||
|
||||
|
@ -3888,6 +3890,9 @@ msgstr "Actif"
|
|||
msgid "open"
|
||||
msgstr "ouvrir"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3939,6 +3944,35 @@ msgstr "oui"
|
|||
msgid "« Back"
|
||||
msgstr "« Retour"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "Baux DHCP"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "Bails 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 ""
|
||||
#~ "Voulez-vous vraiment supprimer cette interface? L'effacement ne peut être "
|
||||
#~ "annulé!\n"
|
||||
#~ "Vous pourriez perdre l'accès à l'équipement si vous y êtes connecté par "
|
||||
#~ "cette interface."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Really shut down network? You might lose access to this device if you are "
|
||||
#~ "connected via this interface."
|
||||
#~ msgstr ""
|
||||
#~ "Voulez-vous vraiment arrêter l'interface %s ?\n"
|
||||
#~ "Vous pourriez perdre l'accès à l'équipement si vous y êtes connecté par "
|
||||
#~ "cette interface."
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Trier"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "aide"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "État IPv4 du WAN"
|
||||
|
||||
|
|
|
@ -47,6 +47,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "עומס במשך דקה:"
|
||||
|
||||
|
@ -744,9 +747,6 @@ msgstr ""
|
|||
"מתאים את הגדרות ה-<abbr title=\"Light Emitting Diode\">LED</abbr>-ים במכשיר "
|
||||
"(אם אפשרי)."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "הרשאות DHCP"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "שרת DHCP"
|
||||
|
||||
|
@ -759,9 +759,6 @@ msgstr "לקוח DHCP"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "אפשרויות-DHCP"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "הרשאות DHCPv6"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -943,6 +940,9 @@ msgid ""
|
|||
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
|
||||
msgstr ""
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "הורד והתקן חבילות"
|
||||
|
||||
|
@ -1055,6 +1055,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1087,6 +1090,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "מוחק..."
|
||||
|
||||
|
@ -1269,7 +1278,7 @@ msgstr ""
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2538,28 +2547,25 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
|
||||
msgid "Really reset all changes?"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"האם למחוק את הרשת האלחוטית הזו? המחיקה אינה ניתנת לביטול!\n"
|
||||
"ייתכן ותאבד גישה לנתב הזה אם אתה מחובר דרך השרת הזו."
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2897,9 +2903,6 @@ msgstr ""
|
|||
"סליחה, אין תמיכה בעדכון מערכת, ולכן קושחה חדשה חייבת להיצרב ידנית. אנא פנה "
|
||||
"אל ה-wiki של OpenWrt/LEDE עבור הוראות ספציפיות למכשיר שלך."
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "מיין"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "מקור"
|
||||
|
||||
|
@ -3368,6 +3371,9 @@ msgstr ""
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr ""
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3617,6 +3623,9 @@ msgstr ""
|
|||
msgid "bridged"
|
||||
msgstr ""
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3652,9 +3661,6 @@ msgstr ""
|
|||
msgid "half-duplex"
|
||||
msgstr ""
|
||||
|
||||
msgid "help"
|
||||
msgstr "עזרה"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3703,6 +3709,9 @@ msgstr "פועל"
|
|||
msgid "open"
|
||||
msgstr ""
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3754,6 +3763,26 @@ msgstr "כן"
|
|||
msgid "« Back"
|
||||
msgstr "<< אחורה"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "הרשאות DHCP"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "הרשאות DHCPv6"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "Really shut down network? You might lose access to this device if you are "
|
||||
#~ "connected via this interface."
|
||||
#~ msgstr ""
|
||||
#~ "האם למחוק את הרשת האלחוטית הזו? המחיקה אינה ניתנת לביטול!\n"
|
||||
#~ "ייתכן ותאבד גישה לנתב הזה אם אתה מחובר דרך השרת הזו."
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "מיין"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "עזרה"
|
||||
|
||||
#~ msgid "Apply"
|
||||
#~ msgstr "החל"
|
||||
|
||||
|
|
|
@ -47,6 +47,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Terhelés (utolsó 1 perc):"
|
||||
|
||||
|
@ -762,9 +765,6 @@ msgstr ""
|
|||
"Az eszköz <abbr title=\"Light Emitting Diode\">LED</abbr>-jei működésének "
|
||||
"testreszabása."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "DHCP bérletek"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "DHCP kiszolgáló"
|
||||
|
||||
|
@ -777,9 +777,6 @@ msgstr "DHCP ügyfél"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "DHCP beállítások"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "DHCPv6 bérletek"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -971,6 +968,9 @@ msgstr ""
|
|||
"Ne továbbítsa a <abbr title=\"Domain Name System\">DNS</abbr>-név nélküli "
|
||||
"<abbr title=\"Domain Name System\">DNS</abbr>-kéréseket "
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Csomag letöltése és telepítése"
|
||||
|
||||
|
@ -1088,6 +1088,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr "A csatolás engedélyezése"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "A lapozó terület engedélyezése"
|
||||
|
||||
|
@ -1120,6 +1123,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Törlés..."
|
||||
|
||||
|
@ -1305,7 +1314,7 @@ msgstr "Szabad hely"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2618,15 +2627,12 @@ msgstr ""
|
|||
"Configuration Protocol\">DHCP</abbr> kiszolgáló beállításához"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
"Biztosan törli az interfészt? A törlés nem visszavonható!\n"
|
||||
" Lehet, hogy elveszti a hozzáférést az eszközhöz, amennyiben ezen az "
|
||||
"interfészen keresztül kapcsolódik."
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"Biztosan törli ezt a vezetéknélküli hálózatot? A törlés nem visszavonható!\n"
|
||||
|
@ -2636,17 +2642,13 @@ msgstr ""
|
|||
msgid "Really reset all changes?"
|
||||
msgstr "Biztos, hogy visszavonja az összes módosítást?"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"Biztos, hogy leállítja a hálózatot?!\n"
|
||||
" Lehet, hogy elveszti a hozzáférést az eszközhöz, amennyiben ezen a "
|
||||
"hálózaton keresztül kapcsolódik."
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"Biztos, hogy leállítja a \"%s\" interfészt?\n"
|
||||
|
@ -2993,9 +2995,6 @@ msgstr ""
|
|||
"telepítését manuálisan kell elvégezni. Az eszközhöz tartozó telepítési "
|
||||
"utasításokért keresse fel az wiki-t."
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Sorbarendezés"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Forrás"
|
||||
|
||||
|
@ -3525,6 +3524,9 @@ msgstr "El nem mentett módosítások"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Nem támogatott protokoll típus."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "Listák frissítése"
|
||||
|
||||
|
@ -3789,6 +3791,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "áthidalt"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "új:"
|
||||
|
||||
|
@ -3826,9 +3831,6 @@ msgstr "full-duplex"
|
|||
msgid "half-duplex"
|
||||
msgstr "half-duplex"
|
||||
|
||||
msgid "help"
|
||||
msgstr "súgó"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "rejtett"
|
||||
|
||||
|
@ -3877,6 +3879,9 @@ msgstr "be"
|
|||
msgid "open"
|
||||
msgstr "nyitás"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3928,6 +3933,35 @@ msgstr "igen"
|
|||
msgid "« Back"
|
||||
msgstr "« Vissza"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "DHCP bérletek"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "DHCPv6 bérletek"
|
||||
|
||||
#~ 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 ""
|
||||
#~ "Biztosan törli az interfészt? A törlés nem visszavonható!\n"
|
||||
#~ " Lehet, hogy elveszti a hozzáférést az eszközhöz, amennyiben ezen az "
|
||||
#~ "interfészen keresztül kapcsolódik."
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "Really shut down network? You might lose access to this device if you are "
|
||||
#~ "connected via this interface."
|
||||
#~ msgstr ""
|
||||
#~ "Biztos, hogy leállítja a hálózatot?!\n"
|
||||
#~ " Lehet, hogy elveszti a hozzáférést az eszközhöz, amennyiben ezen a "
|
||||
#~ "hálózaton keresztül kapcsolódik."
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Sorbarendezés"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "súgó"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "IPv4 WAN állapot"
|
||||
|
||||
|
|
|
@ -49,6 +49,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Carico in 1 minuto:"
|
||||
|
||||
|
@ -767,9 +770,6 @@ msgstr ""
|
|||
"Personalizza la configurazione dei <abbr title=\"Light Emitting Diode\">LED</"
|
||||
"abbr> del sistema se possibile."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "Contratti DHCP"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "Server DHCP"
|
||||
|
||||
|
@ -782,9 +782,6 @@ msgstr "Cliente DHCP"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "Opzioni DHCP"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "Contratti DHCPv6"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr "Cliente DHCPv6"
|
||||
|
||||
|
@ -976,6 +973,9 @@ msgstr ""
|
|||
"Non inoltrare le richieste <abbr title=\"Domain Name System\">DNS</abbr> "
|
||||
"senza nome <abbr title=\"Domain Name System\">DNS</abbr>"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Scarica e installa pacchetto"
|
||||
|
||||
|
@ -1091,6 +1091,9 @@ msgstr "Abilita l'opzione DF (non Frammentare) dei pacchetti incapsulati"
|
|||
msgid "Enable this mount"
|
||||
msgstr "Abilita questo mount"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "Abilita questo swap"
|
||||
|
||||
|
@ -1123,6 +1126,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Cancellazione..."
|
||||
|
||||
|
@ -1307,7 +1316,7 @@ msgstr "Spazio libero"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2616,32 +2625,32 @@ msgstr ""
|
|||
"\"Dynamic Host Configuration Protocol\">DHCP</abbr>"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"Vuoi davvero rimuovere questa interfaccia wireless? La rimozione non può "
|
||||
"essere ripristinata! Potresti perdere l'accesso a questo dispositivo se sei "
|
||||
"connesso con questa rete."
|
||||
|
||||
msgid "Really reset all changes?"
|
||||
msgstr "Azzerare veramente tutte le modifiche?"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"Vuoi davvero spegnere questa interfaccia?\\nPotresti perdere l'accesso a "
|
||||
"questo router se sei connesso usando questa interfaccia."
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"Vuoi davvero spegnere questa interfaccia \"%s\" ?\\nPotresti perdere "
|
||||
"l'accesso a questo router se stai usando questa interfaccia."
|
||||
"Vuoi davvero spegnere questa interfaccia \"%s\"? Potresti perdere l'accesso "
|
||||
"a questo router se stai usando questa interfaccia."
|
||||
|
||||
msgid "Really switch protocol?"
|
||||
msgstr "Cambiare veramente il protocollo?"
|
||||
|
@ -2980,9 +2989,6 @@ msgstr ""
|
|||
"riferimento al wiki per le istruzioni di installazione di dispositivi "
|
||||
"specifici."
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Ordina"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Origine"
|
||||
|
||||
|
@ -3484,6 +3490,9 @@ msgstr "Modifiche non salvate"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Tipo protocollo non supportato."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "Aggiorna liste"
|
||||
|
||||
|
@ -3751,6 +3760,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "ponte"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "crea:"
|
||||
|
||||
|
@ -3788,9 +3800,6 @@ msgstr "full-duplex"
|
|||
msgid "half-duplex"
|
||||
msgstr "half-duplex"
|
||||
|
||||
msgid "help"
|
||||
msgstr "aiuto"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "nascosto"
|
||||
|
||||
|
@ -3839,6 +3848,9 @@ msgstr "acceso"
|
|||
msgid "open"
|
||||
msgstr "apri"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3890,6 +3902,33 @@ msgstr "Sì"
|
|||
msgid "« Back"
|
||||
msgstr "« Indietro"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "Contratti DHCP"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "Contratti 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 ""
|
||||
#~ "Vuoi davvero rimuovere questa interfaccia? La rimozione non può essere "
|
||||
#~ "ripristinata! Potresti perdere l'accesso a questo dispositivo se sei "
|
||||
#~ "connesso con questa rete."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Really shut down network? You might lose access to this device if you are "
|
||||
#~ "connected via this interface."
|
||||
#~ msgstr ""
|
||||
#~ "Vuoi davvero spegnere questa interfaccia? Potresti perdere l'accesso a "
|
||||
#~ "questo router se sei connesso usando questa interfaccia."
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Ordina"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "aiuto"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "Stato WAN IPv4"
|
||||
|
||||
|
|
|
@ -49,6 +49,9 @@ msgstr "-- ラベルを指定 --"
|
|||
msgid "-- match by uuid --"
|
||||
msgstr "-- UUID を指定 --"
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "過去1分の負荷:"
|
||||
|
||||
|
@ -777,9 +780,6 @@ msgstr ""
|
|||
"<abbr title=\"Light Emitting Diode\">LED</abbr> デバイスの挙動をカスタマイズ"
|
||||
"します。"
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "DHCPリース"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "DHCPサーバー"
|
||||
|
||||
|
@ -792,9 +792,6 @@ msgstr "DHCP クライアント"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "DHCPオプション"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "DHCPv6 リース"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr "DHCPv6 クライアント"
|
||||
|
||||
|
@ -985,6 +982,9 @@ msgstr ""
|
|||
"<abbr title=\"Domain Name System\">DNS</abbr>名の無い <abbr title=\"Domain "
|
||||
"Name System\">DNS</abbr>リクエストを転送しません"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "パッケージのダウンロードとインストール"
|
||||
|
||||
|
@ -1102,6 +1102,9 @@ msgstr "カプセル化されたパケットの DF (Don't Fragment) フラグを
|
|||
msgid "Enable this mount"
|
||||
msgstr "マウント設定を有効にする"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "スワップ設定を有効にする"
|
||||
|
||||
|
@ -1134,6 +1137,12 @@ msgstr "エンドポイント ホスト"
|
|||
msgid "Endpoint Port"
|
||||
msgstr "エンドポイント ポート"
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "消去中..."
|
||||
|
||||
|
@ -1321,10 +1330,10 @@ msgstr "ディスクの空き容量"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
"WireGuard インターフェースとピアについての詳細情報: <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>"
|
||||
"wireguard.com\">wireguard.com</a>"
|
||||
|
||||
msgid "GHz"
|
||||
msgstr "GHz"
|
||||
|
@ -2641,16 +2650,12 @@ msgstr ""
|
|||
"として<code>/etc/ethers</code> をロードします"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"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 delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"本当にこの無線ネットワークを削除しますか?一度削除すると、元に戻すことはできま"
|
||||
|
@ -2662,15 +2667,12 @@ msgid "Really reset all changes?"
|
|||
msgstr "本当に全ての変更をリセットしますか?"
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"本当にネットワークを停止しますか?\n"
|
||||
"このネットワークを経由して接続している場合、デバイスにアクセスできなくなる場"
|
||||
"合があります。"
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"本当にインターフェース \"%s\" を停止しますか?\n"
|
||||
|
@ -3017,9 +3019,6 @@ msgstr ""
|
|||
"ファームウェア更新は手動で行っていただく必要があります。wikiを参照して、この"
|
||||
"デバイスのインストール手順を参照してください。"
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "ソート"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "送信元"
|
||||
|
||||
|
@ -3546,6 +3545,9 @@ msgstr "保存されていない変更"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "サポートされていないプロトコルタイプ"
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "リストの更新"
|
||||
|
||||
|
@ -3813,6 +3815,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "ブリッジ"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "作成:"
|
||||
|
||||
|
@ -3850,9 +3855,6 @@ msgstr "全二重"
|
|||
msgid "half-duplex"
|
||||
msgstr "半二重"
|
||||
|
||||
msgid "help"
|
||||
msgstr "ヘルプ"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "(不明)"
|
||||
|
||||
|
@ -3901,6 +3903,9 @@ msgstr "オン"
|
|||
msgid "open"
|
||||
msgstr "オープン"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr "オーバーレイ"
|
||||
|
||||
|
@ -3951,3 +3956,32 @@ msgstr "はい"
|
|||
|
||||
msgid "« Back"
|
||||
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 ""
|
||||
#~ "本当にネットワークを停止しますか?\n"
|
||||
#~ "このネットワークを経由して接続している場合、デバイスにアクセスできなくなる"
|
||||
#~ "場合があります。"
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "ソート"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "ヘルプ"
|
||||
|
|
|
@ -49,6 +49,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "1 분 부하:"
|
||||
|
||||
|
@ -749,9 +752,6 @@ msgstr ""
|
|||
"원한다면 장치에 부착된 <abbr title=\"Light Emitting Diode\">LED</abbr> 들의 "
|
||||
"행동을 마음대로 변경할 수 있습니다."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "DHCP 임대 정보"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "DHCP 서버"
|
||||
|
||||
|
@ -764,9 +764,6 @@ msgstr "DHCP client"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "DHCP-옵션들"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "DHCPv6 임대 정보"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -954,6 +951,9 @@ msgid ""
|
|||
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
|
||||
msgstr ""
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "패키지 다운로드 후 설치"
|
||||
|
||||
|
@ -1068,6 +1068,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1100,6 +1103,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr ""
|
||||
|
||||
|
@ -1282,7 +1291,7 @@ msgstr "여유 공간"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2566,12 +2575,12 @@ msgstr ""
|
|||
"Configuration Protocol\">DHCP</abbr>-서버를 설정합니다"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2579,14 +2588,12 @@ msgid "Really reset all changes?"
|
|||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"정말로 네트워크를 shutdown 하시겠습니까?\\n이 인터페이스를 통해 연결하였다면 "
|
||||
"접속이 끊어질 수 있습니다."
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2923,9 +2930,6 @@ msgid ""
|
|||
"instructions."
|
||||
msgstr ""
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "순서"
|
||||
|
||||
msgid "Source"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3412,6 +3416,9 @@ msgstr "적용 안된 변경 사항"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr ""
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3673,6 +3680,9 @@ msgstr ""
|
|||
msgid "bridged"
|
||||
msgstr ""
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3710,9 +3720,6 @@ msgstr ""
|
|||
msgid "half-duplex"
|
||||
msgstr ""
|
||||
|
||||
msgid "help"
|
||||
msgstr ""
|
||||
|
||||
msgid "hidden"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3761,6 +3768,9 @@ msgstr ""
|
|||
msgid "open"
|
||||
msgstr ""
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3812,6 +3822,22 @@ msgstr ""
|
|||
msgid "« Back"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "DHCP 임대 정보"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "DHCPv6 임대 정보"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Really shut down network? You might lose access to this device if you are "
|
||||
#~ "connected via this interface."
|
||||
#~ msgstr ""
|
||||
#~ "정말로 네트워크를 shutdown 하시겠습니까?\\n이 인터페이스를 통해 연결하였다"
|
||||
#~ "면 접속이 끊어질 수 있습니다."
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "순서"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "IPv4 WAN 상태"
|
||||
|
||||
|
|
|
@ -49,6 +49,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -727,9 +730,6 @@ msgid ""
|
|||
"\">LED</abbr>s if possible."
|
||||
msgstr "Mengkustomisasi perilaku peranti LED jika mungkin."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr ""
|
||||
|
||||
|
@ -742,9 +742,6 @@ msgstr ""
|
|||
msgid "DHCP-Options"
|
||||
msgstr "DHCP-Pilihan"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -929,6 +926,9 @@ msgid ""
|
|||
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
|
||||
msgstr "Jangan hantar permintaan DNS tanpa nama DNS"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Turun dan memasang pakej"
|
||||
|
||||
|
@ -1040,6 +1040,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1072,6 +1075,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr ""
|
||||
|
||||
|
@ -1254,7 +1263,7 @@ msgstr ""
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2542,12 +2551,12 @@ msgid ""
|
|||
msgstr "Baca /etc/ethers untuk mengkonfigurasikan DHCP-Server"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2555,12 +2564,12 @@ msgid "Really reset all changes?"
|
|||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2897,9 +2906,6 @@ msgid ""
|
|||
"instructions."
|
||||
msgstr ""
|
||||
|
||||
msgid "Sort"
|
||||
msgstr ""
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Sumber"
|
||||
|
||||
|
@ -3383,6 +3389,9 @@ msgstr "Perubahan yang belum disimpan"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr ""
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3634,6 +3643,9 @@ msgstr ""
|
|||
msgid "bridged"
|
||||
msgstr ""
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3669,9 +3681,6 @@ msgstr ""
|
|||
msgid "half-duplex"
|
||||
msgstr ""
|
||||
|
||||
msgid "help"
|
||||
msgstr "Membantu"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3720,6 +3729,9 @@ msgstr ""
|
|||
msgid "open"
|
||||
msgstr ""
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3771,6 +3783,9 @@ msgstr ""
|
|||
msgid "« Back"
|
||||
msgstr "« Kembali"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "Membantu"
|
||||
|
||||
#~ msgid "Apply"
|
||||
#~ msgstr "Melaksanakan"
|
||||
|
||||
|
|
|
@ -44,6 +44,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "1 minutts belastning:"
|
||||
|
||||
|
@ -751,9 +754,6 @@ msgstr ""
|
|||
"Tilpasser oppførselen til enhetens <abbr title=\"Light Emitting Diode\">LED</"
|
||||
"abbr>s om mulig."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "DHCP Leier"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "DHCP Server"
|
||||
|
||||
|
@ -766,9 +766,6 @@ msgstr "DHCP klient"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "DHCP-Alternativer"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "DHCPv6 Leier"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -960,6 +957,9 @@ msgstr ""
|
|||
"Ikke videresend <abbr title=\"Domain Name System\">DNS</abbr>-Forespørsler "
|
||||
"uten <abbr title=\"Domain Name System\">DNS</abbr>-Navn"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Last ned og installer pakken"
|
||||
|
||||
|
@ -1075,6 +1075,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr "Aktiver dette monteringspunktet"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "Aktiver denne swapenhet"
|
||||
|
||||
|
@ -1107,6 +1110,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Sletter..."
|
||||
|
||||
|
@ -1291,7 +1300,7 @@ msgstr "Ledig plass"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2593,15 +2602,12 @@ msgstr ""
|
|||
"Configuration Protocol\">DHCP</abbr>-Server"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
"Fjerne dette grensesnittet? Slettingen kan ikke omgjøres!\n"
|
||||
"Du kan miste kontakten med ruteren om du er tilkoblet via dette "
|
||||
"grensesnittet."
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"Fjerne dette trådløse nettverket? Slettingen kan ikke omgjøres!\n"
|
||||
|
@ -2610,17 +2616,13 @@ msgstr ""
|
|||
msgid "Really reset all changes?"
|
||||
msgstr "Vil du nullstille alle endringer?"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"Slå av dette nettverket ?\n"
|
||||
"Du kan miste kontakten med ruteren om du er tilkoblet via dette "
|
||||
"grensesnittet."
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"Slå av dette grensesnittet \"%s\" ?\n"
|
||||
|
@ -2966,9 +2968,6 @@ msgstr ""
|
|||
"flashes manuelt. Viser til wiki for installering av firmare på forskjellige "
|
||||
"enheter."
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Sortering"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Kilde"
|
||||
|
||||
|
@ -3490,6 +3489,9 @@ msgstr "Ulagrede Endringer"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Protokoll type er ikke støttet."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "Oppdater lister"
|
||||
|
||||
|
@ -3754,6 +3756,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "brokoblet"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "opprett:"
|
||||
|
||||
|
@ -3791,9 +3796,6 @@ msgstr "full-dupleks"
|
|||
msgid "half-duplex"
|
||||
msgstr "halv-dupleks"
|
||||
|
||||
msgid "help"
|
||||
msgstr "Hjelp"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "skjult"
|
||||
|
||||
|
@ -3842,6 +3844,9 @@ msgstr "på"
|
|||
msgid "open"
|
||||
msgstr "åpen"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3893,6 +3898,35 @@ msgstr "ja"
|
|||
msgid "« Back"
|
||||
msgstr "« Tilbake"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "DHCP Leier"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "DHCPv6 Leier"
|
||||
|
||||
#~ 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 ""
|
||||
#~ "Fjerne dette grensesnittet? Slettingen kan ikke omgjøres!\n"
|
||||
#~ "Du kan miste kontakten med ruteren om du er tilkoblet via dette "
|
||||
#~ "grensesnittet."
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "Really shut down network? You might lose access to this device if you are "
|
||||
#~ "connected via this interface."
|
||||
#~ msgstr ""
|
||||
#~ "Slå av dette nettverket ?\n"
|
||||
#~ "Du kan miste kontakten med ruteren om du er tilkoblet via dette "
|
||||
#~ "grensesnittet."
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Sortering"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "Hjelp"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "IPv4 WAN Status"
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ msgstr ""
|
|||
"Project-Id-Version: LuCI\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2010-04-20 09:40+0200\n"
|
||||
"PO-Revision-Date: 2018-05-14 20:05+0200\n"
|
||||
"PO-Revision-Date: 2018-06-10 10:05+0200\n"
|
||||
"Last-Translator: Rixerx <krystian.kozak20@gmail.com>\n"
|
||||
"Language-Team: Polish\n"
|
||||
"Language: pl\n"
|
||||
|
@ -50,6 +50,9 @@ msgstr "-- dopasuj po etykiecie --"
|
|||
msgid "-- match by uuid --"
|
||||
msgstr "-- dopasuj po uuid --"
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Obciążenie 1 min.:"
|
||||
|
||||
|
@ -373,12 +376,14 @@ msgstr ""
|
|||
|
||||
msgid "Announce as default router even if no public prefix is available."
|
||||
msgstr ""
|
||||
"Rozgłaszaj jako domyślny router nawet jeśli publiczny prefiks nie jest "
|
||||
"dostępny."
|
||||
|
||||
msgid "Announced DNS domains"
|
||||
msgstr ""
|
||||
msgstr "Rozgłaszaj domeny DNS"
|
||||
|
||||
msgid "Announced DNS servers"
|
||||
msgstr ""
|
||||
msgstr "Rozgłaszaj serwery DNS"
|
||||
|
||||
msgid "Anonymous Identity"
|
||||
msgstr ""
|
||||
|
@ -408,11 +413,13 @@ msgid "Apply unchecked"
|
|||
msgstr ""
|
||||
|
||||
msgid "Architecture"
|
||||
msgstr ""
|
||||
msgstr "Architektura"
|
||||
|
||||
msgid ""
|
||||
"Assign a part of given length of every public IPv6-prefix to this interface"
|
||||
msgstr ""
|
||||
"Przypisz część danej długości każdego publicznego prefiksu IPv6 do tego "
|
||||
"interfejsu"
|
||||
|
||||
msgid "Assign interfaces..."
|
||||
msgstr "Przypisz interfejsy..."
|
||||
|
@ -420,12 +427,14 @@ msgstr "Przypisz interfejsy..."
|
|||
msgid ""
|
||||
"Assign prefix parts using this hexadecimal subprefix ID for this interface."
|
||||
msgstr ""
|
||||
"Przypisz cześć prefiksu za pomocą szesnastkowego ID subprefiksu dla tego "
|
||||
"interfejsu"
|
||||
|
||||
msgid "Associated Stations"
|
||||
msgstr "Połączone stacje"
|
||||
|
||||
msgid "Associations"
|
||||
msgstr ""
|
||||
msgstr "Połączeni"
|
||||
|
||||
msgid "Auth Group"
|
||||
msgstr ""
|
||||
|
@ -532,6 +541,7 @@ msgstr ""
|
|||
|
||||
msgid "Bind only to specific interfaces rather than wildcard address."
|
||||
msgstr ""
|
||||
"Powiąż tylko ze specyficznymi interfejsami, a nie z adresami wieloznacznymi."
|
||||
|
||||
msgid "Bind the tunnel to this interface (optional)."
|
||||
msgstr ""
|
||||
|
@ -693,10 +703,10 @@ msgid "Configuration files will be kept."
|
|||
msgstr "Pliki konfiguracyjne zostaną zachowane."
|
||||
|
||||
msgid "Configuration has been applied."
|
||||
msgstr ""
|
||||
msgstr "Konfiguracja została zastosowana."
|
||||
|
||||
msgid "Configuration has been rolled back!"
|
||||
msgstr ""
|
||||
msgstr "Konfiguracja została wycofana!"
|
||||
|
||||
msgid "Confirmation"
|
||||
msgstr "Potwierdzenie"
|
||||
|
@ -765,6 +775,8 @@ msgid ""
|
|||
"Custom files (certificates, scripts) may remain on the system. To prevent "
|
||||
"this, perform a factory-reset first."
|
||||
msgstr ""
|
||||
"Własne pliki (certyfikaty, skrypty) mogą pozostać w systemie. Aby zapobiec "
|
||||
"temu, wykonaj najpierw reset do ustawień fabrycznych"
|
||||
|
||||
msgid ""
|
||||
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
|
||||
|
@ -773,9 +785,6 @@ msgstr ""
|
|||
"Dostosuj zachowanie diod <abbr title=\"Light Emitting Diode\">LED</abbr> "
|
||||
"urządzenia jeśli jest to możliwe."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "Dzierżawy DHCP"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "Serwer DHCP"
|
||||
|
||||
|
@ -788,17 +797,14 @@ msgstr "Klient DHCP"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "Opcje DHCP"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "Dzierżawy DHCPv6"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr "Klient DHCPv6"
|
||||
|
||||
msgid "DHCPv6-Mode"
|
||||
msgstr ""
|
||||
msgstr "Tryb DHCPv6"
|
||||
|
||||
msgid "DHCPv6-Service"
|
||||
msgstr ""
|
||||
msgstr "Serwis DHCPv6"
|
||||
|
||||
msgid "DNS"
|
||||
msgstr "DNS"
|
||||
|
@ -813,7 +819,7 @@ msgid "DNSSEC"
|
|||
msgstr ""
|
||||
|
||||
msgid "DNSSEC check unsigned"
|
||||
msgstr ""
|
||||
msgstr "Sprawdzanie DNSSEC bez podpisu"
|
||||
|
||||
msgid "DPD Idle Timeout"
|
||||
msgstr ""
|
||||
|
@ -846,7 +852,7 @@ msgid "Default gateway"
|
|||
msgstr "Brama domyślna"
|
||||
|
||||
msgid "Default is stateless + stateful"
|
||||
msgstr ""
|
||||
msgstr "Domyślnie jest to stateless + stateful"
|
||||
|
||||
msgid "Default state"
|
||||
msgstr "Stan domyślny"
|
||||
|
@ -985,6 +991,9 @@ msgstr ""
|
|||
"Nie przekazuj zapytań <abbr title=\"Domain Name System\">DNS</abbr> bez "
|
||||
"nazwy <abbr title=\"Domain Name System\">DNS</abbr>'a"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Pobierz i zainstaluj pakiet"
|
||||
|
||||
|
@ -1104,6 +1113,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr "Włącz ten punkt montowania"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "Włącz ten swap"
|
||||
|
||||
|
@ -1140,6 +1152,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Usuwanie..."
|
||||
|
||||
|
@ -1180,13 +1198,13 @@ msgid "External R1 Key Holder List"
|
|||
msgstr ""
|
||||
|
||||
msgid "External system log server"
|
||||
msgstr "Zewnętrzny serwer dla logów systemowych"
|
||||
msgstr "Serwer zewnętrzny dla logów systemowych"
|
||||
|
||||
msgid "External system log server port"
|
||||
msgstr "Port zewnętrznego serwera dla logów systemowych"
|
||||
msgstr "Port zewnętrznego serwera logów systemowych"
|
||||
|
||||
msgid "External system log server protocol"
|
||||
msgstr "Protokół zewnętrznego serwera dla logów systemowych"
|
||||
msgstr "Protokół zewnętrznego serwera logów systemowych"
|
||||
|
||||
msgid "Extra SSH command options"
|
||||
msgstr ""
|
||||
|
@ -1325,7 +1343,7 @@ msgstr "Wolna przestrzeń"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -1370,7 +1388,7 @@ msgid "Global Settings"
|
|||
msgstr ""
|
||||
|
||||
msgid "Global network options"
|
||||
msgstr ""
|
||||
msgstr "Globalne opcje sieciowe"
|
||||
|
||||
msgid "Go to password configuration..."
|
||||
msgstr "Przejdź do konfiguracji hasła..."
|
||||
|
@ -1462,7 +1480,7 @@ msgid "IPv4 Firewall"
|
|||
msgstr "Firewall IPv4"
|
||||
|
||||
msgid "IPv4 Upstream"
|
||||
msgstr ""
|
||||
msgstr "Protokół IPv4"
|
||||
|
||||
msgid "IPv4 address"
|
||||
msgstr "Adres IPv4"
|
||||
|
@ -1507,22 +1525,22 @@ msgid "IPv6 Neighbours"
|
|||
msgstr ""
|
||||
|
||||
msgid "IPv6 Settings"
|
||||
msgstr ""
|
||||
msgstr "Ustawienia IPv6"
|
||||
|
||||
msgid "IPv6 ULA-Prefix"
|
||||
msgstr ""
|
||||
msgstr "IPv6 Prefiks-ULA"
|
||||
|
||||
msgid "IPv6 Upstream"
|
||||
msgstr ""
|
||||
msgstr "Protokół IPv6"
|
||||
|
||||
msgid "IPv6 address"
|
||||
msgstr "Adres IPv6"
|
||||
|
||||
msgid "IPv6 assignment hint"
|
||||
msgstr ""
|
||||
msgstr "Wskazówka przypisania IPv6"
|
||||
|
||||
msgid "IPv6 assignment length"
|
||||
msgstr ""
|
||||
msgstr "Długość przydziału IPv6"
|
||||
|
||||
msgid "IPv6 gateway"
|
||||
msgstr "Brama IPv6"
|
||||
|
@ -1540,7 +1558,7 @@ msgid "IPv6 routed prefix"
|
|||
msgstr ""
|
||||
|
||||
msgid "IPv6 suffix"
|
||||
msgstr ""
|
||||
msgstr "Sufiks IPv6"
|
||||
|
||||
msgid "IPv6-Address"
|
||||
msgstr "Adres IPv6"
|
||||
|
@ -1800,6 +1818,7 @@ msgstr "Limit"
|
|||
|
||||
msgid "Limit DNS service to subnets interfaces on which we are serving DNS."
|
||||
msgstr ""
|
||||
"Ogranicz usługi DNS do podsieci interfejsów, na których obsługujemy DNS."
|
||||
|
||||
msgid "Limit listening to these interfaces, and loopback."
|
||||
msgstr "Ogranicz nasłuchiwanie do tych interfesjów, oraz loopbacku."
|
||||
|
@ -1883,7 +1902,7 @@ msgid "Local IPv6 address"
|
|||
msgstr "Lokalny adres IPv6"
|
||||
|
||||
msgid "Local Service Only"
|
||||
msgstr ""
|
||||
msgstr "Tylko serwis lokalny"
|
||||
|
||||
msgid "Local Startup"
|
||||
msgstr "Lokalny autostart"
|
||||
|
@ -1904,7 +1923,7 @@ msgstr ""
|
|||
|
||||
msgid "Local domain suffix appended to DHCP names and hosts file entries"
|
||||
msgstr ""
|
||||
"Przyrostek (suffiks) domeny przyłączany do nazw DHCP i wpisów w pliku hosts"
|
||||
"Przyrostek (sufiks) domeny przyłączany do nazw DHCP i wpisów w pliku hosts"
|
||||
|
||||
msgid "Local server"
|
||||
msgstr "Serwer lokalny"
|
||||
|
@ -2104,7 +2123,7 @@ msgid "NCM"
|
|||
msgstr "NCM"
|
||||
|
||||
msgid "NDP-Proxy"
|
||||
msgstr ""
|
||||
msgstr "Proxy NDP"
|
||||
|
||||
msgid "NT Domain"
|
||||
msgstr ""
|
||||
|
@ -2191,7 +2210,7 @@ msgid "Non Pre-emtive CRC errors (CRC_P)"
|
|||
msgstr ""
|
||||
|
||||
msgid "Non-wildcard"
|
||||
msgstr ""
|
||||
msgstr "Bez symboli wieloznacznych"
|
||||
|
||||
msgid "None"
|
||||
msgstr "Brak"
|
||||
|
@ -2222,6 +2241,8 @@ msgstr "Nslookup"
|
|||
|
||||
msgid "Number of cached DNS entries (max is 10000, 0 is no caching)"
|
||||
msgstr ""
|
||||
"Liczba buforowanych wpisów DNS (max wynosi 10000, 0 oznacza brak pamięci "
|
||||
"podręcznej)"
|
||||
|
||||
msgid "OK"
|
||||
msgstr "OK"
|
||||
|
@ -2299,6 +2320,10 @@ msgid ""
|
|||
"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') "
|
||||
"for the interface."
|
||||
msgstr ""
|
||||
"Opcjonalne. Dopuszczalne wartości: 'eui64', 'random', stałe wartości takie "
|
||||
"jak '::1' lub '::1:2'. Kiedy prefiks IPv6 (taki jak 'a:b:c:d::') jest "
|
||||
"odbierany z serwera delegującego, użyj sufiksa (takiego jak '::1') aby "
|
||||
"utworzyć adres IPv6 ('a:b:c:d::1') dla tego interfejsu."
|
||||
|
||||
msgid ""
|
||||
"Optional. Base64-encoded preshared key. Adds in an additional layer of "
|
||||
|
@ -2591,7 +2616,7 @@ msgid "Public prefix routed to this device for distribution to clients."
|
|||
msgstr ""
|
||||
|
||||
msgid "QMI Cellular"
|
||||
msgstr ""
|
||||
msgstr "Komórkowy QMI"
|
||||
|
||||
msgid "Quality"
|
||||
msgstr "Jakość"
|
||||
|
@ -2643,15 +2668,12 @@ msgstr ""
|
|||
"\"Dynamic Host Configuration Protocol\">DHCP</abbr>"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
"Naprawdę usunąć ten interfejs? Usunięcie nie może zostać cofnięte!\n"
|
||||
"Możesz stracić dostęp do tego urządzenia, jeśli jesteś połączony przez ten "
|
||||
"interfejs!"
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"Naprawdę usunąć tę sieć bezprzewodową? Usunięcie nie może zostać cofnięte!\n"
|
||||
|
@ -2661,17 +2683,13 @@ msgstr ""
|
|||
msgid "Really reset all changes?"
|
||||
msgstr "Naprawdę usunąć wszelkie zmiany?"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"Naprawdę wyłączyć tę sieć?\n"
|
||||
"Możesz stracić dostęp do tego urządzenia jeśli jesteś połączony przez ten "
|
||||
"interfejs!"
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"Naprawdę wyłączyć interfejs \"%s\"?\n"
|
||||
|
@ -2792,6 +2810,8 @@ msgid ""
|
|||
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
|
||||
"come from unsigned domains"
|
||||
msgstr ""
|
||||
"Wymagane jest wsparcie dla DNSSEC; sprawdzanie, czy niepodpisane odpowiedzi "
|
||||
"w domenie rzeczywiście pochodzą z domen bez znaku"
|
||||
|
||||
msgid "Reset"
|
||||
msgstr "Resetuj"
|
||||
|
@ -2845,10 +2865,10 @@ msgid "Route Allowed IPs"
|
|||
msgstr ""
|
||||
|
||||
msgid "Route type"
|
||||
msgstr ""
|
||||
msgstr "Typ trasy"
|
||||
|
||||
msgid "Router Advertisement-Service"
|
||||
msgstr ""
|
||||
msgstr "Serwis rozgłoszeniowy routera"
|
||||
|
||||
msgid "Router Password"
|
||||
msgstr "Hasło routera"
|
||||
|
@ -2983,7 +3003,7 @@ msgid "Size (.ipk)"
|
|||
msgstr ""
|
||||
|
||||
msgid "Size of DNS query cache"
|
||||
msgstr ""
|
||||
msgstr "Rozmiar pamięci podręcznej zapytań DNS"
|
||||
|
||||
msgid "Skip"
|
||||
msgstr "Pomiń"
|
||||
|
@ -3001,7 +3021,7 @@ msgid "Software"
|
|||
msgstr "Oprogramowanie"
|
||||
|
||||
msgid "Software VLAN"
|
||||
msgstr "VLAN programowy"
|
||||
msgstr "Programowy VLAN"
|
||||
|
||||
msgid "Some fields are invalid, cannot save values!"
|
||||
msgstr "Wartości pewnych pól są niewłaściwe, nie mogę ich zachować!"
|
||||
|
@ -3021,9 +3041,6 @@ msgstr ""
|
|||
"być wgrany ręcznie. Sprawdź stronę wiki, aby uzyskać instrukcję dla danego "
|
||||
"urządzenia."
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Posortuj"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Źródło"
|
||||
|
||||
|
@ -3112,10 +3129,10 @@ msgid "Submit"
|
|||
msgstr "Wyślij"
|
||||
|
||||
msgid "Suppress logging"
|
||||
msgstr ""
|
||||
msgstr "Pomiń rejestrowanie"
|
||||
|
||||
msgid "Suppress logging of the routine operation of these protocols"
|
||||
msgstr ""
|
||||
msgstr "Pomiń rejestrowanie rutynowych operacji dla tych protokołów"
|
||||
|
||||
msgid "Swap"
|
||||
msgstr ""
|
||||
|
@ -3354,7 +3371,7 @@ msgid "There are no active leases."
|
|||
msgstr "Brak aktywnych dzierżaw."
|
||||
|
||||
msgid "There are no changes to apply."
|
||||
msgstr ""
|
||||
msgstr "Nie ma żadnych zmian do zastosowania."
|
||||
|
||||
msgid "There are no pending changes to revert!"
|
||||
msgstr "Brak oczekujących zmian do przywrócenia!"
|
||||
|
@ -3384,6 +3401,9 @@ msgid ""
|
|||
"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
|
||||
"Name System\">DNS</abbr> servers."
|
||||
msgstr ""
|
||||
"Ten plik może zawierać linie takie jak 'server=/domain/1.2.3.4' lub "
|
||||
"'server=1.2.3.4' dla specyficznych dla domeny lub pełnych serwerów <abbr "
|
||||
"title=\"Domain Name System\">DNS</abbr>"
|
||||
|
||||
msgid ""
|
||||
"This is a list of shell glob patterns for matching files and directories to "
|
||||
|
@ -3464,7 +3484,7 @@ msgid ""
|
|||
"To restore configuration files, you can upload a previously generated backup "
|
||||
"archive here."
|
||||
msgstr ""
|
||||
"Aby przywrócić pliki konfiguracyjne, możesz tutaj przesłać wcześniej "
|
||||
"Aby przywrócić pliki konfiguracyjne, możesz przesłać tutaj wcześniej "
|
||||
"utworzoną kopię zapasową."
|
||||
|
||||
msgid "Tone"
|
||||
|
@ -3557,6 +3577,9 @@ msgstr "Niezapisane zmiany"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Nieobsługiwany typ protokołu."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "Aktualizuj listy"
|
||||
|
||||
|
@ -3728,7 +3751,7 @@ msgid "Waiting for command to complete..."
|
|||
msgstr "Trwa wykonanie polecenia..."
|
||||
|
||||
msgid "Waiting for configuration to get applied… %ds"
|
||||
msgstr ""
|
||||
msgstr "Oczekiwanie na zastosowanie konfiguracji… %ds"
|
||||
|
||||
msgid "Waiting for device..."
|
||||
msgstr "Oczekiwanie na urządzenie..."
|
||||
|
@ -3828,6 +3851,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "zmostkowany"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "utwórz:"
|
||||
|
||||
|
@ -3865,9 +3891,6 @@ msgstr "pełny-duplex"
|
|||
msgid "half-duplex"
|
||||
msgstr "pół-duplex"
|
||||
|
||||
msgid "help"
|
||||
msgstr "pomoc"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "ukryty"
|
||||
|
||||
|
@ -3917,6 +3940,9 @@ msgstr "włączone"
|
|||
msgid "open"
|
||||
msgstr "otwarte"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3968,6 +3994,35 @@ msgstr "tak"
|
|||
msgid "« Back"
|
||||
msgstr "« Wróć"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "Dzierżawy DHCP"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "Dzierżawy 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 ""
|
||||
#~ "Naprawdę usunąć ten interfejs? Usunięcie nie może zostać cofnięte!\n"
|
||||
#~ "Możesz stracić dostęp do tego urządzenia, jeśli jesteś połączony przez "
|
||||
#~ "ten interfejs!"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "Really shut down network? You might lose access to this device if you are "
|
||||
#~ "connected via this interface."
|
||||
#~ msgstr ""
|
||||
#~ "Naprawdę wyłączyć tę sieć?\n"
|
||||
#~ "Możesz stracić dostęp do tego urządzenia jeśli jesteś połączony przez ten "
|
||||
#~ "interfejs!"
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Posortuj"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "pomoc"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "Status IPv4 WAN"
|
||||
|
||||
|
|
|
@ -51,6 +51,9 @@ msgstr ""
|
|||
"-- casar por <abbr title=\"Universal Unique IDentifier/Identificador Único "
|
||||
"Universal\">UUID</abbr> --"
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Carga 1 Minuto:"
|
||||
|
||||
|
@ -800,9 +803,6 @@ msgstr ""
|
|||
"Se possível, personaliza o comportamento dos <abbr title=\"Diodo Emissor de "
|
||||
"Luz\">LED</abbr>s."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "Alocações do DHCP"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "Servidor DHCP"
|
||||
|
||||
|
@ -815,9 +815,6 @@ msgstr "Cliente DHCP"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "Opções de DHCP"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "Alocações DHCPv6"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr "Cliente DHCPv6"
|
||||
|
||||
|
@ -1014,6 +1011,9 @@ msgstr ""
|
|||
"abbr> sem o nome completo do <abbr title=\"Sistema de Nomes de Domínios"
|
||||
"\">DNS</abbr>"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Baixe e instale o pacote"
|
||||
|
||||
|
@ -1133,6 +1133,9 @@ msgstr "Habilita o campo DF (Não Fragmentar) dos pacotes encapsulados."
|
|||
msgid "Enable this mount"
|
||||
msgstr "Ativar esta montagem"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "Ativar este espaço de troca (swap)"
|
||||
|
||||
|
@ -1167,6 +1170,12 @@ msgstr "Equipamento do ponto final"
|
|||
msgid "Endpoint Port"
|
||||
msgstr "Porta do ponto final"
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Apagando..."
|
||||
|
||||
|
@ -1356,10 +1365,10 @@ msgstr "Espaço livre"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
"Mais informações sobre interfaces e parceiros WireGuard em <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
|
||||
msgid "GHz"
|
||||
msgstr "GHz"
|
||||
|
@ -2729,15 +2738,12 @@ msgstr ""
|
|||
"\"Protocolo de Configuração Dinâmica de Hosts\">DHCP</abbr>"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
"Realmente excluir esta interface? A exclusão não pode ser desfeita!\n"
|
||||
" Você poderá perder o acesso a este dispositivo se você estiver conectado "
|
||||
"através desta interface."
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"Realmente excluir esta interface Wireless? A exclusão não pode ser "
|
||||
|
@ -2749,15 +2755,12 @@ msgid "Really reset all changes?"
|
|||
msgstr "Realmente limpar todas as mudanças?"
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"Realmente desligar esta rede\"%s\" ?\n"
|
||||
"Você poderá perder o acesso a este dispositivo se você estiver conectado "
|
||||
"através desta interface."
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"Realmente desligar esta interface\"%s\" ?\n"
|
||||
|
@ -3111,9 +3114,6 @@ msgstr ""
|
|||
"firmware deve ser gravada manualmente. Por favor, consulte a wiki para "
|
||||
"instruções específicas da instalação deste dispositivo."
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Ordenar"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Origem"
|
||||
|
||||
|
@ -3660,6 +3660,9 @@ msgstr "Alterações Não Salvas"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Tipo de protocolo não suportado."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "Atualizar listas"
|
||||
|
||||
|
@ -3933,6 +3936,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "em ponte"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "criar"
|
||||
|
||||
|
@ -3970,9 +3976,6 @@ msgstr "full-duplex"
|
|||
msgid "half-duplex"
|
||||
msgstr "half-duplex"
|
||||
|
||||
msgid "help"
|
||||
msgstr "ajuda"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "ocultar"
|
||||
|
||||
|
@ -4023,6 +4026,9 @@ msgstr "ligado"
|
|||
msgid "open"
|
||||
msgstr "aberto"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr "sobreposição"
|
||||
|
||||
|
@ -4074,6 +4080,34 @@ msgstr "sim"
|
|||
msgid "« Back"
|
||||
msgstr "« Voltar"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "Alocações do DHCP"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "Alocações 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 ""
|
||||
#~ "Realmente excluir esta interface? A exclusão não pode ser desfeita!\n"
|
||||
#~ " Você poderá perder o acesso a este dispositivo se você estiver conectado "
|
||||
#~ "através desta interface."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Really shut down network? You might lose access to this device if you are "
|
||||
#~ "connected via this interface."
|
||||
#~ msgstr ""
|
||||
#~ "Realmente desligar esta rede\"%s\" ?\n"
|
||||
#~ "Você poderá perder o acesso a este dispositivo se você estiver conectado "
|
||||
#~ "através desta interface."
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Ordenar"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "ajuda"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "Estado IPv4 da WAN"
|
||||
|
||||
|
|
|
@ -49,6 +49,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Carga de 1 Minuto:"
|
||||
|
||||
|
@ -764,9 +767,6 @@ msgstr ""
|
|||
"Customiza o comportamento dos <abbr title=\"Diodo Emissor de Luz\">LED</"
|
||||
"abbr>s, se possível."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "Concessões DHCP"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "Servidor DHCP"
|
||||
|
||||
|
@ -779,9 +779,6 @@ msgstr "Cliente DHCP"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "Opções DHCP"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "Concessões DHCPv6"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -975,6 +972,9 @@ msgstr ""
|
|||
"Não encaminhar consultas <abbr title=\"Sistema de Nomes de Domínios\">DNS</"
|
||||
"abbr> sem o nome do <abbr title=\"Sistema de Nomes de Domínios\">DNS</abbr>"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Descarregar e instalar pacote"
|
||||
|
||||
|
@ -1091,6 +1091,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr "Ativar este mount"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "Ativar esta swap"
|
||||
|
||||
|
@ -1123,6 +1126,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "A apagar..."
|
||||
|
||||
|
@ -1308,7 +1317,7 @@ msgstr "Espaço livre"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2613,15 +2622,12 @@ msgstr ""
|
|||
"\"Protocolo de Configuração Dinâmica de Hosts\">DHCP</abbr>"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
"Deseja mesmo apagar esta interface? A eliminação não poder desfeita!\n"
|
||||
"Pode perde a ligação ao dispositivo, caso esta ligado através desta "
|
||||
"interface."
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"Deseja mesmo apagar esta rede? A eliminação não poder desfeita!\n"
|
||||
|
@ -2630,16 +2636,13 @@ msgstr ""
|
|||
msgid "Really reset all changes?"
|
||||
msgstr "Deseja mesmo limpar todas as alterações?"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"Deseja mesmo desligar esta rede?\n"
|
||||
"Pode perder o acesso ao dispositivo se estiver ligado através desta rede."
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"Deseja mesmo desligar a interface \"%s\" ?\n"
|
||||
|
@ -2981,9 +2984,6 @@ msgid ""
|
|||
"instructions."
|
||||
msgstr ""
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Ordenar"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Origem"
|
||||
|
||||
|
@ -3491,6 +3491,9 @@ msgstr "Alterações não Guardadas"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Tipo de protocolo não suportado."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "Actualizar listas"
|
||||
|
||||
|
@ -3749,6 +3752,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr ""
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "criar:"
|
||||
|
||||
|
@ -3786,9 +3792,6 @@ msgstr "full-duplex"
|
|||
msgid "half-duplex"
|
||||
msgstr "half-duplex"
|
||||
|
||||
msgid "help"
|
||||
msgstr "ajuda"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "escondido"
|
||||
|
||||
|
@ -3838,6 +3841,9 @@ msgstr "ligado"
|
|||
msgid "open"
|
||||
msgstr "abrir"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3889,6 +3895,34 @@ msgstr "sim"
|
|||
msgid "« Back"
|
||||
msgstr "« Voltar"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "Concessões DHCP"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "Concessões 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 ""
|
||||
#~ "Deseja mesmo apagar esta interface? A eliminação não poder desfeita!\n"
|
||||
#~ "Pode perde a ligação ao dispositivo, caso esta ligado através desta "
|
||||
#~ "interface."
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "Really shut down network? You might lose access to this device if you are "
|
||||
#~ "connected via this interface."
|
||||
#~ msgstr ""
|
||||
#~ "Deseja mesmo desligar esta rede?\n"
|
||||
#~ "Pode perder o acesso ao dispositivo se estiver ligado através desta rede."
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Ordenar"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "ajuda"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "Estado WAN IPv4"
|
||||
|
||||
|
|
|
@ -48,6 +48,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Incarcarea in ultimul minut"
|
||||
|
||||
|
@ -737,9 +740,6 @@ msgid ""
|
|||
"\">LED</abbr>s if possible."
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "Conexiuni DHCP"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "Server DHCP"
|
||||
|
||||
|
@ -752,9 +752,6 @@ msgstr ""
|
|||
msgid "DHCP-Options"
|
||||
msgstr "Optiuni DHCP"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -936,6 +933,9 @@ msgid ""
|
|||
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
|
||||
msgstr ""
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Descarca si instaleaza pachetul"
|
||||
|
||||
|
@ -1046,6 +1046,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1078,6 +1081,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Stergere..."
|
||||
|
||||
|
@ -1261,7 +1270,7 @@ msgstr "Spatiu liber"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2537,12 +2546,12 @@ msgstr ""
|
|||
"<abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>-"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2550,12 +2559,12 @@ msgid "Really reset all changes?"
|
|||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2891,9 +2900,6 @@ msgid ""
|
|||
"instructions."
|
||||
msgstr ""
|
||||
|
||||
msgid "Sort"
|
||||
msgstr ""
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Sursa"
|
||||
|
||||
|
@ -3359,6 +3365,9 @@ msgstr "Modificari nesalvate"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Tipul de protocol neacceptat."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3610,6 +3619,9 @@ msgstr ""
|
|||
msgid "bridged"
|
||||
msgstr ""
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3645,9 +3657,6 @@ msgstr ""
|
|||
msgid "half-duplex"
|
||||
msgstr ""
|
||||
|
||||
msgid "help"
|
||||
msgstr "ajutor"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "ascuns"
|
||||
|
||||
|
@ -3696,6 +3705,9 @@ msgstr ""
|
|||
msgid "open"
|
||||
msgstr ""
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3747,6 +3759,12 @@ msgstr "da"
|
|||
msgid "« Back"
|
||||
msgstr "« Inapoi"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "Conexiuni DHCP"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "ajutor"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "Statusul IPv4 pe WAN"
|
||||
|
||||
|
|
|
@ -51,6 +51,9 @@ msgstr "-- проверка по метке --"
|
|||
msgid "-- match by uuid --"
|
||||
msgstr "-- проверка по uuid --"
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Загрузка за 1 минуту:"
|
||||
|
||||
|
@ -793,9 +796,6 @@ msgstr ""
|
|||
"Настройка поведения светодиодной индикации <abbr title=\"Светодиод\">LED</"
|
||||
"abbr>s устройства, если это возможно."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "Аренды DHCP"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "DHCP-сервер"
|
||||
|
||||
|
@ -808,9 +808,6 @@ msgstr "DHCP-клиент"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "DHCP-Настройки"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "Аренды DHCPv6"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr "DHCPv6 клиент"
|
||||
|
||||
|
@ -1003,6 +1000,9 @@ msgstr ""
|
|||
"Не перенаправлять <abbr title=\"Служба доменных имён\">DNS</abbr>-запросы "
|
||||
"без <abbr title=\"Служба доменных имён\">DNS</abbr>-имени."
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Загрузить и установить пакет"
|
||||
|
||||
|
@ -1120,6 +1120,9 @@ msgstr "Включите флаг DF (не Фрагментировать) ин
|
|||
msgid "Enable this mount"
|
||||
msgstr "Включить эту<br />точку монтирования"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "Включить этот раздел подкачки"
|
||||
|
||||
|
@ -1154,6 +1157,12 @@ msgstr "Конечная точка Хоста"
|
|||
msgid "Endpoint Port"
|
||||
msgstr "Конечная точка Порта"
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Стирание..."
|
||||
|
||||
|
@ -1341,10 +1350,10 @@ msgstr "Свободное место"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
"Дополнительная информация о интерфейсах и партнерах WireGuard приведена в <a "
|
||||
"href=\"http://wireguard.io\">wireguard.io</a>."
|
||||
"href=\"http://wireguard.com\">wireguard.com</a>."
|
||||
|
||||
msgid "GHz"
|
||||
msgstr "ГГц"
|
||||
|
@ -2688,15 +2697,12 @@ msgstr ""
|
|||
"динамической настройки узла\">DHCP</abbr>-сервера."
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"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 delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"Действительно удалить эту беспроводную сеть? Удаление не может быть отменено!"
|
||||
|
@ -2707,18 +2713,16 @@ msgid "Really reset all changes?"
|
|||
msgstr "Действительно сбросить все изменения?"
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"Действительно отключить сеть? Вы можете потерять доступ к этому устройству, "
|
||||
"если вы подключены через этот интерфейс."
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"Действительно отключить интерфейс \"%s\" ?\\nВы можете потерять доступ к "
|
||||
"этому устройству, если вы подключены через этот интерфейс."
|
||||
"Действительно отключить интерфейс \"%s\"? Вы можете потерять доступ к этому "
|
||||
"устройству, если вы подключены через этот интерфейс."
|
||||
|
||||
msgid "Really switch protocol?"
|
||||
msgstr "Вы действительно хотите изменить протокол?"
|
||||
|
@ -3068,9 +3072,6 @@ msgstr ""
|
|||
"должна быть установлена вручную. Обратитесь к wiki для получения конкретных "
|
||||
"инструкций для вашего устройства."
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Сортировка"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Источник"
|
||||
|
||||
|
@ -3607,6 +3608,9 @@ msgstr "Непринятые изменения"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Неподдерживаемый тип протокола."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "Обновить списки"
|
||||
|
||||
|
@ -3882,6 +3886,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "соед. мостом"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "создать:"
|
||||
|
||||
|
@ -3919,9 +3926,6 @@ msgstr "полный дуплекс"
|
|||
msgid "half-duplex"
|
||||
msgstr "полудуплекс"
|
||||
|
||||
msgid "help"
|
||||
msgstr "помощь"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "скрытый"
|
||||
|
||||
|
@ -3970,6 +3974,9 @@ msgstr "включено"
|
|||
msgid "open"
|
||||
msgstr "открыть"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr "overlay"
|
||||
|
||||
|
@ -4021,6 +4028,33 @@ msgstr "да"
|
|||
msgid "« Back"
|
||||
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"
|
||||
|
||||
|
|
|
@ -44,6 +44,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -720,9 +723,6 @@ msgid ""
|
|||
"\">LED</abbr>s if possible."
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr ""
|
||||
|
||||
|
@ -735,9 +735,6 @@ msgstr ""
|
|||
msgid "DHCP-Options"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -917,6 +914,9 @@ msgid ""
|
|||
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
|
||||
msgstr ""
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1027,6 +1027,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1059,6 +1062,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr ""
|
||||
|
||||
|
@ -1241,7 +1250,7 @@ msgstr ""
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2510,12 +2519,12 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2523,12 +2532,12 @@ msgid "Really reset all changes?"
|
|||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2863,9 +2872,6 @@ msgid ""
|
|||
"instructions."
|
||||
msgstr ""
|
||||
|
||||
msgid "Sort"
|
||||
msgstr ""
|
||||
|
||||
msgid "Source"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3329,6 +3335,9 @@ msgstr ""
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr ""
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3578,6 +3587,9 @@ msgstr ""
|
|||
msgid "bridged"
|
||||
msgstr ""
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3613,9 +3625,6 @@ msgstr ""
|
|||
msgid "half-duplex"
|
||||
msgstr ""
|
||||
|
||||
msgid "help"
|
||||
msgstr ""
|
||||
|
||||
msgid "hidden"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3664,6 +3673,9 @@ msgstr ""
|
|||
msgid "open"
|
||||
msgstr ""
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -47,6 +47,9 @@ msgstr "-- matcha enligt märke --"
|
|||
msgid "-- match by uuid --"
|
||||
msgstr "-- matcha enligt uuid --"
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "Belastning senaste minuten:"
|
||||
|
||||
|
@ -734,9 +737,6 @@ msgid ""
|
|||
"\">LED</abbr>s if possible."
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "DHCP-kontrakt"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "DHCP-server"
|
||||
|
||||
|
@ -749,9 +749,6 @@ msgstr "DHCP-klient"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "DHCP-alternativ"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "DHCPv6-kontrakt"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr "DHCPv6-klient"
|
||||
|
||||
|
@ -937,6 +934,9 @@ msgstr ""
|
|||
"Vidarebefordra inte <abbr title=\"Domain Name System\">DNS</abbr>-"
|
||||
"förfrågningar utan <abbr title=\"Domain Name System\">DNS</abbr>-namn"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Ladda ner och installera paket"
|
||||
|
||||
|
@ -1047,6 +1047,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr "Aktivera den här monteringen"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "Aktivera den här swap"
|
||||
|
||||
|
@ -1079,6 +1082,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "Raderar..."
|
||||
|
||||
|
@ -1261,7 +1270,7 @@ msgstr "Fritt utrymme"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2533,12 +2542,12 @@ msgstr ""
|
|||
"Configuration Protocol\">DHCP</abbr>-servern"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2546,12 +2555,12 @@ msgid "Really reset all changes?"
|
|||
msgstr "Verkligen återställa alla ändringar?"
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2886,9 +2895,6 @@ msgid ""
|
|||
"instructions."
|
||||
msgstr ""
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Sortera"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Källa"
|
||||
|
||||
|
@ -3356,6 +3362,9 @@ msgstr "Osparade ändringar"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "Protokolltypen stöds inte."
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "Uppdatera listor"
|
||||
|
||||
|
@ -3611,6 +3620,9 @@ msgstr ""
|
|||
msgid "bridged"
|
||||
msgstr "bryggad"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "skapa:"
|
||||
|
||||
|
@ -3646,9 +3658,6 @@ msgstr "full-duplex"
|
|||
msgid "half-duplex"
|
||||
msgstr "halv-duplex"
|
||||
|
||||
msgid "help"
|
||||
msgstr "hjälp"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "gömd"
|
||||
|
||||
|
@ -3697,6 +3706,9 @@ msgstr "på"
|
|||
msgid "open"
|
||||
msgstr "öppen"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3747,3 +3759,15 @@ msgstr "ja"
|
|||
|
||||
msgid "« Back"
|
||||
msgstr "« Bakåt"
|
||||
|
||||
#~ msgid "DHCP Leases"
|
||||
#~ msgstr "DHCP-kontrakt"
|
||||
|
||||
#~ msgid "DHCPv6 Leases"
|
||||
#~ msgstr "DHCPv6-kontrakt"
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Sortera"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "hjälp"
|
||||
|
|
|
@ -37,6 +37,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -713,9 +716,6 @@ msgid ""
|
|||
"\">LED</abbr>s if possible."
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr ""
|
||||
|
||||
|
@ -728,9 +728,6 @@ msgstr ""
|
|||
msgid "DHCP-Options"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -910,6 +907,9 @@ msgid ""
|
|||
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
|
||||
msgstr ""
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1020,6 +1020,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1052,6 +1055,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr ""
|
||||
|
||||
|
@ -1234,7 +1243,7 @@ msgstr ""
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2503,12 +2512,12 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2516,12 +2525,12 @@ msgid "Really reset all changes?"
|
|||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2856,9 +2865,6 @@ msgid ""
|
|||
"instructions."
|
||||
msgstr ""
|
||||
|
||||
msgid "Sort"
|
||||
msgstr ""
|
||||
|
||||
msgid "Source"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3322,6 +3328,9 @@ msgstr ""
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr ""
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3571,6 +3580,9 @@ msgstr ""
|
|||
msgid "bridged"
|
||||
msgstr ""
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3606,9 +3618,6 @@ msgstr ""
|
|||
msgid "half-duplex"
|
||||
msgstr ""
|
||||
|
||||
msgid "help"
|
||||
msgstr ""
|
||||
|
||||
msgid "hidden"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3657,6 +3666,9 @@ msgstr ""
|
|||
msgid "open"
|
||||
msgstr ""
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -47,6 +47,9 @@ msgstr "-- etikete göre eşleştir --"
|
|||
msgid "-- match by uuid --"
|
||||
msgstr "-- uuid'e göre eşleştir --"
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "1 Dakikalık Yük:"
|
||||
|
||||
|
@ -733,9 +736,6 @@ msgid ""
|
|||
"\">LED</abbr>s if possible."
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr ""
|
||||
|
||||
|
@ -748,9 +748,6 @@ msgstr ""
|
|||
msgid "DHCP-Options"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -930,6 +927,9 @@ msgid ""
|
|||
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
|
||||
msgstr ""
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1040,6 +1040,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1072,6 +1075,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr ""
|
||||
|
||||
|
@ -1254,7 +1263,7 @@ msgstr ""
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2523,12 +2532,12 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2536,12 +2545,12 @@ msgid "Really reset all changes?"
|
|||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2876,9 +2885,6 @@ msgid ""
|
|||
"instructions."
|
||||
msgstr ""
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "Sıralama"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Kaynak"
|
||||
|
||||
|
@ -3342,6 +3348,9 @@ msgstr ""
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr ""
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3593,6 +3602,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "köprülü"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "oluşturma:"
|
||||
|
||||
|
@ -3628,9 +3640,6 @@ msgstr "tam çift yönlü"
|
|||
msgid "half-duplex"
|
||||
msgstr "yarı çift yönlü"
|
||||
|
||||
msgid "help"
|
||||
msgstr "yardım"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "gizli"
|
||||
|
||||
|
@ -3679,6 +3688,9 @@ msgstr "açık"
|
|||
msgid "open"
|
||||
msgstr "açık"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr "bindirilmiş"
|
||||
|
||||
|
@ -3730,6 +3742,12 @@ msgstr "evet"
|
|||
msgid "« Back"
|
||||
msgstr "« Geri"
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "Sıralama"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "yardım"
|
||||
|
||||
#~ msgid "Apply"
|
||||
#~ msgstr "Uygula"
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -49,6 +49,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -729,9 +732,6 @@ msgstr ""
|
|||
"Tùy chỉnh chế độ của thiết bị <abbr title=\"Light Emitting Diode\">LED</"
|
||||
"abbr>s nếu có thể."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr ""
|
||||
|
||||
|
@ -744,9 +744,6 @@ msgstr ""
|
|||
msgid "DHCP-Options"
|
||||
msgstr "Tùy chọn DHCP"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr ""
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -932,6 +929,9 @@ msgstr ""
|
|||
"Don&#39;t chuyển tiếp <abbr title=\"Hệ thống tên miền\">DNS</abbr>-Yêu "
|
||||
"cầu không cần <abbr title=\"Hệ thống tên miền\">DNS</abbr>-Tên"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "Tải và cài đặt gói"
|
||||
|
||||
|
@ -1045,6 +1045,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1077,6 +1080,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr ""
|
||||
|
||||
|
@ -1259,7 +1268,7 @@ msgstr ""
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2548,12 +2557,12 @@ msgstr ""
|
|||
"Configuration Protocol\">DHCP</abbr>-Server"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"Really delete this interface? The deletion cannot be undone! You might lose "
|
||||
"access to this device if you are connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2561,12 +2570,12 @@ msgid "Really reset all changes?"
|
|||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2903,9 +2912,6 @@ msgid ""
|
|||
"instructions."
|
||||
msgstr ""
|
||||
|
||||
msgid "Sort"
|
||||
msgstr ""
|
||||
|
||||
msgid "Source"
|
||||
msgstr "Nguồn"
|
||||
|
||||
|
@ -3384,6 +3390,9 @@ msgstr "Thay đổi không lưu"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr ""
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3637,6 +3646,9 @@ msgstr ""
|
|||
msgid "bridged"
|
||||
msgstr ""
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3674,9 +3686,6 @@ msgstr ""
|
|||
msgid "half-duplex"
|
||||
msgstr ""
|
||||
|
||||
msgid "help"
|
||||
msgstr ""
|
||||
|
||||
msgid "hidden"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3725,6 +3734,9 @@ msgstr ""
|
|||
msgid "open"
|
||||
msgstr ""
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -39,6 +39,9 @@ msgstr "-- 根据标签匹配 --"
|
|||
msgid "-- match by uuid --"
|
||||
msgstr "-- 根据 UUID 匹配 --"
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "1 分钟负载:"
|
||||
|
||||
|
@ -378,13 +381,13 @@ msgid "Any zone"
|
|||
msgstr "任意区域"
|
||||
|
||||
msgid "Apply request failed with status <code>%h</code>"
|
||||
msgstr ""
|
||||
msgstr "应用请求失败,状态 <code>%h</code>"
|
||||
|
||||
msgid "Apply unchecked"
|
||||
msgstr ""
|
||||
msgstr "应用未选中"
|
||||
|
||||
msgid "Architecture"
|
||||
msgstr ""
|
||||
msgstr "架构"
|
||||
|
||||
msgid ""
|
||||
"Assign a part of given length of every public IPv6-prefix to this interface"
|
||||
|
@ -401,7 +404,7 @@ msgid "Associated Stations"
|
|||
msgstr "已连接站点"
|
||||
|
||||
msgid "Associations"
|
||||
msgstr ""
|
||||
msgstr "关联数"
|
||||
|
||||
msgid "Auth Group"
|
||||
msgstr "认证组"
|
||||
|
@ -561,10 +564,10 @@ msgid "Changes"
|
|||
msgstr "修改数"
|
||||
|
||||
msgid "Changes applied."
|
||||
msgstr "更改已应用"
|
||||
msgstr "更改已应用。"
|
||||
|
||||
msgid "Changes have been reverted."
|
||||
msgstr ""
|
||||
msgstr "更改已取消。"
|
||||
|
||||
msgid "Changes the administrator password for accessing the device"
|
||||
msgstr "修改访问设备的管理员密码"
|
||||
|
@ -575,7 +578,7 @@ msgstr "信道"
|
|||
msgid ""
|
||||
"Channel %d is not available in the %s regulatory domain and has been auto-"
|
||||
"adjusted to %d."
|
||||
msgstr ""
|
||||
msgstr "信道 %d 在 %s 监管区域内不可用并已自动调整到 %d。"
|
||||
|
||||
msgid "Check"
|
||||
msgstr "检查"
|
||||
|
@ -657,10 +660,10 @@ msgid "Configuration files will be kept."
|
|||
msgstr "配置文件将被保留。"
|
||||
|
||||
msgid "Configuration has been applied."
|
||||
msgstr ""
|
||||
msgstr "配置已应用。"
|
||||
|
||||
msgid "Configuration has been rolled back!"
|
||||
msgstr ""
|
||||
msgstr "配置已回滚!"
|
||||
|
||||
msgid "Confirmation"
|
||||
msgstr "确认密码"
|
||||
|
@ -682,6 +685,8 @@ msgid ""
|
|||
"changes. You might need to reconnect if you modified network related "
|
||||
"settings such as the IP address or wireless security credentials."
|
||||
msgstr ""
|
||||
"应用配置更改后,无法重新获得对设备的访问权限。如果您修改了网络相关设置如 IP "
|
||||
"地址或无线安全证书,则可能需要重新连接。"
|
||||
|
||||
msgid "Country"
|
||||
msgstr "国家"
|
||||
|
@ -735,9 +740,6 @@ msgid ""
|
|||
"\">LED</abbr>s if possible."
|
||||
msgstr "自定义此设备的 <abbr title=\"Light Emitting Diode\">LED</abbr> 行为。"
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "DHCP 分配"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "DHCP 服务器"
|
||||
|
||||
|
@ -750,9 +752,6 @@ msgstr "DHCP 客户端"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "DHCP 选项"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "DHCPv6 分配"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr "DHCPv6 客户端"
|
||||
|
||||
|
@ -852,7 +851,7 @@ msgid "Device unreachable"
|
|||
msgstr "无法连接到设备"
|
||||
|
||||
msgid "Device unreachable!"
|
||||
msgstr ""
|
||||
msgstr "无法连接到设备!"
|
||||
|
||||
msgid "Diagnostics"
|
||||
msgstr "网络诊断"
|
||||
|
@ -889,7 +888,7 @@ msgid "Discard upstream RFC1918 responses"
|
|||
msgstr "丢弃 RFC1918 上行响应数据"
|
||||
|
||||
msgid "Dismiss"
|
||||
msgstr ""
|
||||
msgstr "解除"
|
||||
|
||||
msgid "Displaying only packages containing"
|
||||
msgstr "只显示有内容的软件包"
|
||||
|
@ -940,6 +939,9 @@ msgid ""
|
|||
msgstr ""
|
||||
"不转发没有 <abbr title=\"Domain Name System\">DNS</abbr> 名称的解析请求"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "下载并安装软件包"
|
||||
|
||||
|
@ -1004,6 +1006,7 @@ msgid ""
|
|||
"Enable <abbr title=\"Internet Group Management Protocol\">IGMP</abbr> "
|
||||
"snooping"
|
||||
msgstr ""
|
||||
"启用 <abbr title=\"Internet Group Management Protocol\">IGMP</abbr> 窥探"
|
||||
|
||||
msgid "Enable <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
|
||||
msgstr "开启 <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
|
||||
|
@ -1053,6 +1056,9 @@ msgstr "启用后报文的 DF(禁止分片)标志。"
|
|||
msgid "Enable this mount"
|
||||
msgstr "启用此挂载点"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "启用此 swap 分区"
|
||||
|
||||
|
@ -1063,7 +1069,7 @@ msgid "Enabled"
|
|||
msgstr "启用"
|
||||
|
||||
msgid "Enables IGMP snooping on this bridge"
|
||||
msgstr ""
|
||||
msgstr "在此桥接上启用 IGMP 窥探"
|
||||
|
||||
msgid ""
|
||||
"Enables fast roaming among access points that belong to the same Mobility "
|
||||
|
@ -1085,6 +1091,12 @@ msgstr "端点主机"
|
|||
msgid "Endpoint Port"
|
||||
msgstr "端点端口"
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "擦除中..."
|
||||
|
||||
|
@ -1144,7 +1156,7 @@ msgid "FT protocol"
|
|||
msgstr "FT 协议"
|
||||
|
||||
msgid "Failed to confirm apply within %ds, waiting for rollback…"
|
||||
msgstr ""
|
||||
msgstr "在 %d 秒内确认应用失败,等待回滚..."
|
||||
|
||||
msgid "File"
|
||||
msgstr "文件"
|
||||
|
@ -1267,10 +1279,10 @@ msgstr "空闲空间"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
"有关 WireGuard 接口和 Peer 的更多信息:<a href=\"http://wireguard.io"
|
||||
"\">wireguard.io</a>。"
|
||||
"有关 WireGuard 接口和 Peer 的更多信息:<a href=\"http://wireguard.com"
|
||||
"\">wireguard.com</a>。"
|
||||
|
||||
msgid "GHz"
|
||||
msgstr "GHz"
|
||||
|
@ -1397,7 +1409,7 @@ msgid "IPv4 Firewall"
|
|||
msgstr "IPv4 防火墙"
|
||||
|
||||
msgid "IPv4 Upstream"
|
||||
msgstr ""
|
||||
msgstr "IPv4 上游"
|
||||
|
||||
msgid "IPv4 address"
|
||||
msgstr "IPv4 地址"
|
||||
|
@ -1448,7 +1460,7 @@ msgid "IPv6 ULA-Prefix"
|
|||
msgstr "IPv6 ULA 前缀"
|
||||
|
||||
msgid "IPv6 Upstream"
|
||||
msgstr ""
|
||||
msgstr "IPv6 上游"
|
||||
|
||||
msgid "IPv6 address"
|
||||
msgstr "IPv6 地址"
|
||||
|
@ -2158,7 +2170,7 @@ msgid "Obfuscated Password"
|
|||
msgstr "混淆密码"
|
||||
|
||||
msgid "Obtain IPv6-Address"
|
||||
msgstr ""
|
||||
msgstr "获取 IPv6 地址"
|
||||
|
||||
msgid "Off-State Delay"
|
||||
msgstr "关闭时间"
|
||||
|
@ -2566,13 +2578,12 @@ msgstr ""
|
|||
"Configuration Protocol\">DHCP</abbr> 服务器"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"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 delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"确定要删除此无线网络?删除操作无法撤销!\\n删除此无线网络,可能导致无法再访问"
|
||||
|
@ -2582,14 +2593,12 @@ msgid "Really reset all changes?"
|
|||
msgstr "确定要放弃所有更改?"
|
||||
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"确定要关闭此网络?\\n如果您正在使用此接口连接路由器,关闭此网络可能导致连接断"
|
||||
"开!"
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"确定要关闭接口 \"%s\"?\\n如果您正在使用此接口连接路由器,关闭此网络可能导致"
|
||||
|
@ -2742,16 +2751,16 @@ msgid "Reveal/hide password"
|
|||
msgstr "显示/隐藏 密码"
|
||||
|
||||
msgid "Revert"
|
||||
msgstr "放弃"
|
||||
msgstr "恢复"
|
||||
|
||||
msgid "Revert changes"
|
||||
msgstr ""
|
||||
msgstr "恢复更改"
|
||||
|
||||
msgid "Revert request failed with status <code>%h</code>"
|
||||
msgstr ""
|
||||
msgstr "恢复请求失败,状态 <code>%h</code>"
|
||||
|
||||
msgid "Reverting configuration…"
|
||||
msgstr ""
|
||||
msgstr "正在恢复配置..."
|
||||
|
||||
msgid "Root"
|
||||
msgstr "Root"
|
||||
|
@ -2816,7 +2825,7 @@ msgid "Save"
|
|||
msgstr "保存"
|
||||
|
||||
msgid "Save & Apply"
|
||||
msgstr "保存&应用"
|
||||
msgstr "保存并应用"
|
||||
|
||||
msgid "Scan"
|
||||
msgstr "扫描"
|
||||
|
@ -2934,9 +2943,6 @@ msgstr ""
|
|||
"抱歉,您的设备暂不支持 sysupgrade 升级,需手动更新固件。请参考 Wiki 中关于此"
|
||||
"设备的固件更新说明。"
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "排序"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "源地址"
|
||||
|
||||
|
@ -2979,7 +2985,7 @@ msgid "Start priority"
|
|||
msgstr "启动优先级"
|
||||
|
||||
msgid "Starting configuration apply…"
|
||||
msgstr ""
|
||||
msgstr "开始应用配置..."
|
||||
|
||||
msgid "Startup"
|
||||
msgstr "启动项"
|
||||
|
@ -3146,6 +3152,9 @@ msgid ""
|
|||
"or revert all pending changes to keep the currently working configuration "
|
||||
"state."
|
||||
msgstr ""
|
||||
"在应用挂起的更改后 %d 秒内无法到达该设备,出于安全原因导致配置回滚。如果您认"
|
||||
"为配置更改仍然正确,请执行未选中的配置应用。或者您可以在尝试再次应用之前解除"
|
||||
"此警告并编辑更改,或者还原所有未完成的更改以保持当前正在工作的配置状态。"
|
||||
|
||||
msgid ""
|
||||
"The device file of the memory or partition (<abbr title=\"for example\">e.g."
|
||||
|
@ -3235,7 +3244,7 @@ msgid "There are no active leases."
|
|||
msgstr "没有已分配的租约。"
|
||||
|
||||
msgid "There are no changes to apply."
|
||||
msgstr ""
|
||||
msgstr "没有待生效的更改。"
|
||||
|
||||
msgid "There are no pending changes to revert!"
|
||||
msgstr "没有可放弃的更改!"
|
||||
|
@ -3423,6 +3432,9 @@ msgstr "未保存的配置"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "不支持的协议类型"
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "刷新列表"
|
||||
|
||||
|
@ -3592,7 +3604,7 @@ msgid "Waiting for command to complete..."
|
|||
msgstr "等待命令执行完成..."
|
||||
|
||||
msgid "Waiting for configuration to get applied… %ds"
|
||||
msgstr ""
|
||||
msgstr "等待应用配置... %d 秒"
|
||||
|
||||
msgid "Waiting for device..."
|
||||
msgstr "等待设备..."
|
||||
|
@ -3685,6 +3697,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "桥接的"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "创建:"
|
||||
|
||||
|
@ -3722,9 +3737,6 @@ msgstr "全双工"
|
|||
msgid "half-duplex"
|
||||
msgstr "半双工"
|
||||
|
||||
msgid "help"
|
||||
msgstr "帮助"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "隐藏"
|
||||
|
||||
|
@ -3773,11 +3785,14 @@ msgstr "开"
|
|||
msgid "open"
|
||||
msgstr "开放式"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr "覆盖"
|
||||
|
||||
msgid "random"
|
||||
msgstr ""
|
||||
msgstr "随机"
|
||||
|
||||
msgid "relay mode"
|
||||
msgstr "中继模式"
|
||||
|
@ -3824,6 +3839,32 @@ msgstr "是"
|
|||
msgid "« Back"
|
||||
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 ""
|
||||
#~ "确定要关闭此网络?\\n如果您正在使用此接口连接路由器,关闭此网络可能导致连"
|
||||
#~ "接断开!"
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "排序"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "帮助"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "IPv4 WAN 状态"
|
||||
|
||||
|
|
|
@ -47,6 +47,9 @@ msgstr ""
|
|||
msgid "-- match by uuid --"
|
||||
msgstr ""
|
||||
|
||||
msgid "-- please select --"
|
||||
msgstr ""
|
||||
|
||||
msgid "1 Minute Load:"
|
||||
msgstr "1分鐘負載"
|
||||
|
||||
|
@ -740,9 +743,6 @@ msgstr ""
|
|||
"如果可以的話,自定這個設備的動作 <abbr title=\"Light Emitting Diode\">LED</"
|
||||
"abbr>s ."
|
||||
|
||||
msgid "DHCP Leases"
|
||||
msgstr "DHCP的釋放週期"
|
||||
|
||||
msgid "DHCP Server"
|
||||
msgstr "DHCP伺服器"
|
||||
|
||||
|
@ -755,9 +755,6 @@ msgstr "DHCP用戶端"
|
|||
msgid "DHCP-Options"
|
||||
msgstr "DHCP選項"
|
||||
|
||||
msgid "DHCPv6 Leases"
|
||||
msgstr "DHCPv6版釋放時間週期"
|
||||
|
||||
msgid "DHCPv6 client"
|
||||
msgstr ""
|
||||
|
||||
|
@ -945,6 +942,9 @@ msgstr ""
|
|||
"若沒 <abbr title=\"Domain Name System\">DNS</abbr>-名稱的話,不要轉發 <abbr "
|
||||
"title=\"Domain Name System\">DNS</abbr>-請求"
|
||||
|
||||
msgid "Down"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install package"
|
||||
msgstr "下載並安裝軟體包"
|
||||
|
||||
|
@ -1057,6 +1057,9 @@ msgstr ""
|
|||
msgid "Enable this mount"
|
||||
msgstr "啟用掛載點"
|
||||
|
||||
msgid "Enable this network"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this swap"
|
||||
msgstr "啟用swap功能"
|
||||
|
||||
|
@ -1089,6 +1092,12 @@ msgstr ""
|
|||
msgid "Endpoint Port"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enter custom values"
|
||||
msgstr ""
|
||||
|
||||
msgid "Erasing..."
|
||||
msgstr "刪除中..."
|
||||
|
||||
|
@ -1272,7 +1281,7 @@ msgstr "剩餘空間"
|
|||
|
||||
msgid ""
|
||||
"Further information about WireGuard interfaces and peers at <a href=\"http://"
|
||||
"wireguard.io\">wireguard.io</a>."
|
||||
"wireguard.com\">wireguard.com</a>."
|
||||
msgstr ""
|
||||
|
||||
msgid "GHz"
|
||||
|
@ -2553,14 +2562,12 @@ msgstr ""
|
|||
"Configuration Protocol\">DHCP</abbr>-伺服器"
|
||||
|
||||
msgid ""
|
||||
"Really delete this interface? The deletion cannot be undone!\\nYou might "
|
||||
"lose access to this device if you are connected via this interface."
|
||||
"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 delete this wireless network? The deletion cannot be undone!\\nYou "
|
||||
"Really delete this wireless network? The deletion cannot be undone! You "
|
||||
"might lose access to this device if you are connected via this network."
|
||||
msgstr ""
|
||||
"真的要刪除這個無線網路?無法復元的刪除!\n"
|
||||
|
@ -2569,16 +2576,13 @@ msgstr ""
|
|||
msgid "Really reset all changes?"
|
||||
msgstr "確定要重置回復原廠?"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Really shut down network?\\nYou might lose access to this device if you are "
|
||||
"connected via this interface."
|
||||
"Really shut down network? You might lose access to this device if you are "
|
||||
"connected via this interface"
|
||||
msgstr ""
|
||||
"真的要刪除這個網路 ?\n"
|
||||
"假如您是透過這個介面連線您可能會無法存取這個設備."
|
||||
|
||||
msgid ""
|
||||
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
|
||||
"Really shutdown interface \"%s\"? You might lose access to this device if "
|
||||
"you are connected via this interface."
|
||||
msgstr ""
|
||||
"真的要關閉這個介面 \"%s\" ?!\n"
|
||||
|
@ -2918,9 +2922,6 @@ msgstr ""
|
|||
"抱歉, 沒有sysupgrade支援出現, 新版韌體映像檔必須手動更新. 請回歸wiki找尋特定"
|
||||
"設備安裝指引."
|
||||
|
||||
msgid "Sort"
|
||||
msgstr "分類"
|
||||
|
||||
msgid "Source"
|
||||
msgstr "來源"
|
||||
|
||||
|
@ -3416,6 +3417,9 @@ msgstr "尚未存檔的修改"
|
|||
msgid "Unsupported protocol type."
|
||||
msgstr "不支援的協定型態"
|
||||
|
||||
msgid "Up"
|
||||
msgstr ""
|
||||
|
||||
msgid "Update lists"
|
||||
msgstr "上傳清單"
|
||||
|
||||
|
@ -3674,6 +3678,9 @@ msgstr "baseT"
|
|||
msgid "bridged"
|
||||
msgstr "已橋接"
|
||||
|
||||
msgid "create"
|
||||
msgstr ""
|
||||
|
||||
msgid "create:"
|
||||
msgstr "建立:"
|
||||
|
||||
|
@ -3711,9 +3718,6 @@ msgstr "全雙工"
|
|||
msgid "half-duplex"
|
||||
msgstr "半雙工"
|
||||
|
||||
msgid "help"
|
||||
msgstr "幫助"
|
||||
|
||||
msgid "hidden"
|
||||
msgstr "隱藏"
|
||||
|
||||
|
@ -3762,6 +3766,9 @@ msgstr "開啟"
|
|||
msgid "open"
|
||||
msgstr "打開"
|
||||
|
||||
msgid "output"
|
||||
msgstr ""
|
||||
|
||||
msgid "overlay"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3813,6 +3820,33 @@ msgstr "是的"
|
|||
msgid "« Back"
|
||||
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"
|
||||
#~ "假如您要透過這個介面連線您可能會無法存取這個設備."
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "Really shut down network? You might lose access to this device if you are "
|
||||
#~ "connected via this interface."
|
||||
#~ msgstr ""
|
||||
#~ "真的要刪除這個網路 ?\n"
|
||||
#~ "假如您是透過這個介面連線您可能會無法存取這個設備."
|
||||
|
||||
#~ msgid "Sort"
|
||||
#~ msgstr "分類"
|
||||
|
||||
#~ msgid "help"
|
||||
#~ msgstr "幫助"
|
||||
|
||||
#~ msgid "IPv4 WAN Status"
|
||||
#~ msgstr "IPv4寬頻連線狀態"
|
||||
|
||||
|
|
|
@ -43,6 +43,9 @@ function index()
|
|||
end)
|
||||
|
||||
if has_wifi then
|
||||
page = entry({"admin", "network", "wireless_assoclist"}, call("wifi_assoclist"), nil)
|
||||
page.leaf = true
|
||||
|
||||
page = entry({"admin", "network", "wireless_join"}, post("wifi_join"), nil)
|
||||
page.leaf = true
|
||||
|
||||
|
@ -384,6 +387,13 @@ function wifi_shutdown(wnet)
|
|||
wifi_reconnect_shutdown(true, wnet)
|
||||
end
|
||||
|
||||
function wifi_assoclist()
|
||||
local s = require "luci.tools.status"
|
||||
|
||||
luci.http.prepare_content("application/json")
|
||||
luci.http.write_json(s.wifi_assoclist())
|
||||
end
|
||||
|
||||
function lease_status()
|
||||
local s = require "luci.tools.status"
|
||||
|
||||
|
|
|
@ -74,7 +74,7 @@ function action_packages()
|
|||
local out, err
|
||||
|
||||
-- Display
|
||||
local display = luci.http.formvalue("display") or "installed"
|
||||
local display = luci.http.formvalue("display") or "available"
|
||||
|
||||
-- Letter
|
||||
local letter = string.byte(luci.http.formvalue("letter") or "A", 1)
|
||||
|
|
|
@ -260,7 +260,7 @@ m.uci:foreach("network", "switch",
|
|||
end
|
||||
|
||||
|
||||
local vid = s:option(Value, has_vlan4k or "vlan", "VLAN ID", "<div id='portstatus-%s'></div>" % switch_name)
|
||||
local vid = s:option(Value, has_vlan4k or "vlan", "VLAN ID")
|
||||
local mx_vid = has_vlan4k and 4094 or (num_vlans - 1)
|
||||
|
||||
vid.rmempty = false
|
||||
|
@ -333,7 +333,7 @@ m.uci:foreach("network", "switch",
|
|||
|
||||
local _, pt
|
||||
for _, pt in ipairs(topo.ports) do
|
||||
local po = s:option(ListValue, tostring(pt.num), pt.label, '<div id="portstatus-%s-%d"></div>' %{ switch_name, pt.num })
|
||||
local po = s:option(ListValue, tostring(pt.num), pt.label)
|
||||
|
||||
po:value("", translate("off"))
|
||||
|
||||
|
|
|
@ -104,16 +104,17 @@ end
|
|||
keys = s2:option(TextValue, "_data", "")
|
||||
keys.wrap = "off"
|
||||
keys.rows = 3
|
||||
keys.rmempty = false
|
||||
|
||||
function keys.cfgvalue()
|
||||
return fs.readfile("/etc/dropbear/authorized_keys") or ""
|
||||
end
|
||||
|
||||
function keys.write(self, section, value)
|
||||
if value then
|
||||
fs.writefile("/etc/dropbear/authorized_keys", value:gsub("\r\n", "\n"))
|
||||
end
|
||||
return fs.writefile("/etc/dropbear/authorized_keys", value:gsub("\r\n", "\n"))
|
||||
end
|
||||
|
||||
function keys.remove(self, section, value)
|
||||
return fs.writefile("/etc/dropbear/authorized_keys", "")
|
||||
end
|
||||
|
||||
end
|
||||
|
|
|
@ -67,83 +67,81 @@ local getip_host = luci.config.diag and luci.config.diag.getip or "ifconfig.co"
|
|||
<div class="cbi-map">
|
||||
<h2 name="content"><%:Diagnostics%></h2>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<div class="cbi-section">
|
||||
<legend><%:Network Utilities%></legend>
|
||||
|
||||
<br />
|
||||
<div class="table">
|
||||
<div class="tr">
|
||||
<div class="td left">
|
||||
<input style="margin: 5px 0" type="text" value="<%=ping_host%>" name="ping" /><br />
|
||||
<% if has_ping6 then %>
|
||||
<select name="ping_proto" style="width:auto">
|
||||
<option value="" selected="selected"><%:IPv4%></option>
|
||||
<option value="6"><%:IPv6%></option>
|
||||
</select>
|
||||
<input type="button" value="<%:Ping%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.ping, this.form.ping_proto.selectedIndex)" />
|
||||
<% else %>
|
||||
<input type="button" value="<%:Ping%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.ping)" />
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
<div style="width:23%; float:left">
|
||||
<input style="margin: 5px 0" type="text" value="<%=ping_host%>" name="ping" /><br />
|
||||
<% if has_ping6 then %>
|
||||
<select name="ping_proto" style="width:auto">
|
||||
<option value="" selected="selected"><%:IPv4%></option>
|
||||
<option value="6"><%:IPv6%></option>
|
||||
</select>
|
||||
<input type="button" value="<%:Ping%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.ping, this.form.ping_proto.selectedIndex)" />
|
||||
<% else %>
|
||||
<input type="button" value="<%:Ping%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.ping)" />
|
||||
<% end %>
|
||||
<div class="td left">
|
||||
<input style="margin: 5px 0" type="text" value="<%=route_host%>" name="traceroute" /><br />
|
||||
<% if has_traceroute6 then %>
|
||||
<select name="traceroute_proto" style="width:auto">
|
||||
<option value="" selected="selected"><%:IPv4%></option>
|
||||
<option value="6"><%:IPv6%></option>
|
||||
</select>
|
||||
<input type="button" value="<%:Traceroute%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.traceroute, this.form.traceroute_proto.selectedIndex)" />
|
||||
<% else %>
|
||||
<input type="button" value="<%:Traceroute%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.traceroute)" />
|
||||
<% end %>
|
||||
<% if not has_traceroute6 then %>
|
||||
<p> </p>
|
||||
<p><%:Install iputils-traceroute6 for IPv6 traceroute%></p>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
<div class="td left">
|
||||
<input style="margin: 5px 0" type="text" value="<%=dns_host%>" name="nslookup" /><br />
|
||||
<input type="button" value="<%:Nslookup%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.nslookup)" />
|
||||
</div>
|
||||
<% if has_speedtest and false then %>
|
||||
<div class="td left">
|
||||
<input style="margin: 5px 0" type="text" value="" name="speedtest" placeholder="alternate server" /><br />
|
||||
<input type="button" value="<%:Speedtest%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.speedtest)" />
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<% if has_iperf3 then %>
|
||||
<div class="td left">
|
||||
<input style="margin: 5px 0" type="text" value="<%=iperf3_host%>" name="iperf3" /><br />
|
||||
<input type="button" value="<%:Iperf3%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.iperf3)" />
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<% if has_curl then %>
|
||||
<div class="td left">
|
||||
<input style="margin: 5px 0" type="hidden" value="<%=getip_host%>" name="getip" /><br />
|
||||
<input type="button" value="<%:Get public IP%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.getip)" />
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<% if has_netstat then %>
|
||||
<div class="td left">
|
||||
<input style="margin: 5px 0" type="hidden" value="" name="netstat" /><br />
|
||||
<input type="button" value="<%:Netstat%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.netstat)" />
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width:23%; float:left">
|
||||
<input style="margin: 5px 0" type="text" value="<%=route_host%>" name="traceroute" /><br />
|
||||
<% if has_traceroute6 then %>
|
||||
<select name="traceroute_proto" style="width:auto">
|
||||
<option value="" selected="selected"><%:IPv4%></option>
|
||||
<option value="6"><%:IPv6%></option>
|
||||
</select>
|
||||
<input type="button" value="<%:Traceroute%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.traceroute, this.form.traceroute_proto.selectedIndex)" />
|
||||
<% else %>
|
||||
<input type="button" value="<%:Traceroute%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.traceroute)" />
|
||||
<% end %>
|
||||
<% if not has_traceroute6 then %>
|
||||
<p> </p>
|
||||
<p><%:Install iputils-traceroute6 for IPv6 traceroute%></p>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
<div style="width:23%; float:left;">
|
||||
<input style="margin: 5px 0" type="text" value="<%=dns_host%>" name="nslookup" /><br />
|
||||
<input type="button" value="<%:Nslookup%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.nslookup)" />
|
||||
</div>
|
||||
|
||||
<% if has_speedtest and false then %>
|
||||
<div style="width:23%; float:left;">
|
||||
<input style="margin: 5px 0" type="text" value="" name="speedtest" placeholder="alternate server" /><br />
|
||||
<input type="button" value="<%:Speedtest%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.speedtest)" />
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<% if has_iperf3 then %>
|
||||
<div style="width:23%; float:left;">
|
||||
<input style="margin: 5px 0" type="text" value="<%=iperf3_host%>" name="iperf3" /><br />
|
||||
<input type="button" value="<%:Iperf3%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.iperf3)" />
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<% if has_curl then %>
|
||||
<div style="width:23%; float:left;">
|
||||
<input style="margin: 5px 0" type="hidden" value="<%=getip_host%>" name="getip" /><br />
|
||||
<input type="button" value="<%:Get public IP%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.getip)" />
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<% if has_netstat then %>
|
||||
<div style="width:23%; float:left;">
|
||||
<input style="margin: 5px 0" type="hidden" value="" name="netstat" /><br />
|
||||
<input type="button" value="<%:Netstat%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.netstat)" />
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<br style="clear:both" /><br />
|
||||
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<fieldset class="cbi-section" style="display:none">
|
||||
<legend id="diag-rc-legend"><%:Collecting data...%></legend>
|
||||
<div class="cbi-section" style="display:none">
|
||||
<strong id="diag-rc-legend"></strong>
|
||||
<span id="diag-rc-output"></span>
|
||||
</fieldset>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<%+footer%>
|
||||
|
|
|
@ -0,0 +1,61 @@
|
|||
--- luasrc/view/admin_network/diagnostics.htm 2018-07-03 15:17:57.633203371 +0200
|
||||
+++ luasrc/view/admin_network/diagnostics.htm 2018-06-08 10:45:56.107723557 +0200
|
||||
@@ -72,7 +78,7 @@
|
||||
|
||||
<br />
|
||||
|
||||
- <div style="width:30%; float:left">
|
||||
+ <div style="width:23%; float:left">
|
||||
<input style="margin: 5px 0" type="text" value="<%=ping_host%>" name="ping" /><br />
|
||||
<% if has_ping6 then %>
|
||||
<select name="ping_proto" style="width:auto">
|
||||
@@ -85,7 +91,7 @@
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
- <div style="width:33%; float:left">
|
||||
+ <div style="width:23%; float:left">
|
||||
<input style="margin: 5px 0" type="text" value="<%=route_host%>" name="traceroute" /><br />
|
||||
<% if has_traceroute6 then %>
|
||||
<select name="traceroute_proto" style="width:auto">
|
||||
@@ -102,11 +108,39 @@
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
- <div style="width:33%; float:left;">
|
||||
+ <div style="width:23%; float:left;">
|
||||
<input style="margin: 5px 0" type="text" value="<%=dns_host%>" name="nslookup" /><br />
|
||||
<input type="button" value="<%:Nslookup%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.nslookup)" />
|
||||
</div>
|
||||
|
||||
+ <% if has_speedtest and false then %>
|
||||
+ <div style="width:23%; float:left;">
|
||||
+ <input style="margin: 5px 0" type="text" value="" name="speedtest" placeholder="alternate server" /><br />
|
||||
+ <input type="button" value="<%:Speedtest%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.speedtest)" />
|
||||
+ </div>
|
||||
+ <% end %>
|
||||
+
|
||||
+ <% if has_iperf3 then %>
|
||||
+ <div style="width:23%; float:left;">
|
||||
+ <input style="margin: 5px 0" type="text" value="<%=iperf3_host%>" name="iperf3" /><br />
|
||||
+ <input type="button" value="<%:Iperf3%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.iperf3)" />
|
||||
+ </div>
|
||||
+ <% end %>
|
||||
+
|
||||
+ <% if has_curl then %>
|
||||
+ <div style="width:23%; float:left;">
|
||||
+ <input style="margin: 5px 0" type="hidden" value="<%=getip_host%>" name="getip" /><br />
|
||||
+ <input type="button" value="<%:Get public IP%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.getip)" />
|
||||
+ </div>
|
||||
+ <% end %>
|
||||
+
|
||||
+ <% if has_netstat then %>
|
||||
+ <div style="width:23%; float:left;">
|
||||
+ <input style="margin: 5px 0" type="hidden" value="" name="netstat" /><br />
|
||||
+ <input type="button" value="<%:Netstat%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.netstat)" />
|
||||
+ </div>
|
||||
+ <% end %>
|
||||
+
|
||||
<br style="clear:both" /><br />
|
||||
|
||||
</fieldset>
|
|
@ -33,7 +33,7 @@
|
|||
<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
|
||||
<script type="text/javascript">//<![CDATA[
|
||||
function iface_shutdown(id, reconnect) {
|
||||
if (!reconnect && !confirm(String.format('<%:Really shutdown interface "%s" ?\nYou might lose access to this device if you are connected via this interface.%>', id)))
|
||||
if (!reconnect && !confirm(<%=luci.http.write_json(translate('Really shutdown interface "%s"? You might lose access to this device if you are connected via this interface.'))%>.format(id)))
|
||||
return;
|
||||
|
||||
var d = document.getElementById(id + '-ifc-description');
|
||||
|
@ -67,7 +67,7 @@
|
|||
}
|
||||
|
||||
function iface_delete(id) {
|
||||
if (!confirm('<%:Really delete this interface? The deletion cannot be undone!\nYou might lose access to this device if you are connected via this interface.%>'))
|
||||
if (!confirm(<%=luci.http.write_json(translate('Really delete this interface? The deletion cannot be undone! You might lose access to this device if you are connected via this interface'))%>))
|
||||
return;
|
||||
|
||||
(new XHR()).post('<%=url('admin/network/iface_delete')%>/' + id, { token: '<%=token%>' },
|
||||
|
@ -141,8 +141,8 @@
|
|||
}
|
||||
|
||||
html += String.format(
|
||||
'<strong><%:RX%></strong>: %.2mB (%d <%:Pkts.%>)<br />' +
|
||||
'<strong><%:TX%></strong>: %.2mB (%d <%:Pkts.%>)<br />',
|
||||
'<strong><%:RX%>:</strong> %.2mB (%d <%:Pkts.%>)<br />' +
|
||||
'<strong><%:TX%>:</strong> %.2mB (%d <%:Pkts.%>)<br />',
|
||||
ifc.rx_bytes, ifc.rx_packets,
|
||||
ifc.tx_bytes, ifc.tx_packets
|
||||
);
|
||||
|
@ -209,46 +209,43 @@
|
|||
</fieldset>
|
||||
|
||||
<div class="cbi-map">
|
||||
<fieldset class="cbi-section">
|
||||
<div class="cbi-section">
|
||||
<legend><%:Interface Overview%></legend>
|
||||
|
||||
<div class="table cbi-section-table" style="margin:10px; empty-cells:hide">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th"><%:Network%></div>
|
||||
<div class="th left"><%:Status%></div>
|
||||
<div class="th"><%:Actions%></div>
|
||||
</div>
|
||||
<%
|
||||
for i, net in ipairs(netlist) do
|
||||
local z = net[3]
|
||||
local c = z and z:get_color() or "#EEEEEE"
|
||||
local t = z and translate("Part of zone %q" % z:name()) or translate("No zone assigned")
|
||||
%>
|
||||
<div class="tr cbi-section-table-row cbi-rowstyle-<%=i % 2 + 1%>">
|
||||
<div class="td">
|
||||
<div class="ifacebox">
|
||||
<div class="ifacebox-head" style="background-color:<%=c%>" title="<%=pcdata(t)%>">
|
||||
<strong><%=net[1]:upper()%></strong>
|
||||
</div>
|
||||
<div class="ifacebox-body" id="<%=net[1]%>-ifc-devices">
|
||||
<img src="<%=resource%>/icons/ethernet_disabled.png" style="width:16px; height:16px" /><br />
|
||||
<small>?</small>
|
||||
<div class="cbi-section-node">
|
||||
<div class="table">
|
||||
<%
|
||||
for i, net in ipairs(netlist) do
|
||||
local z = net[3]
|
||||
local c = z and z:get_color() or "#EEEEEE"
|
||||
local t = z and translate("Part of zone %q" % z:name()) or translate("No zone assigned")
|
||||
%>
|
||||
<div class="tr cbi-rowstyle-<%=i % 2 + 1%>">
|
||||
<div class="td col-3 center middle">
|
||||
<div class="ifacebox">
|
||||
<div class="ifacebox-head" style="background-color:<%=c%>" title="<%=pcdata(t)%>">
|
||||
<strong><%=net[1]:upper()%></strong>
|
||||
</div>
|
||||
<div class="ifacebox-body" id="<%=net[1]%>-ifc-devices">
|
||||
<img src="<%=resource%>/icons/ethernet_disabled.png" style="width:16px; height:16px" /><br />
|
||||
<small>?</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="td col-5 left" id="<%=net[1]%>-ifc-description">
|
||||
<em><%:Collecting data...%></em>
|
||||
</div>
|
||||
<div class="td cbi-section-actions">
|
||||
<input type="button" class="cbi-button cbi-button-neutral" onclick="iface_shutdown('<%=net[1]%>', true)" title="<%:Reconnect this interface%>" value="<%:Connect%>" />
|
||||
<input type="button" class="cbi-button cbi-button-neutral" onclick="iface_shutdown('<%=net[1]%>', false)" title="<%:Shutdown this interface%>" value="<%:Stop%>" />
|
||||
<input type="button" class="cbi-button cbi-button-action important" onclick="location.href='<%=url("admin/network/network", net[1])%>'" title="<%:Edit this interface%>" value="<%:Edit%>" id="<%=net[1]%>-ifc-edit" />
|
||||
<input type="button" class="cbi-button cbi-button-negative" onclick="iface_delete('<%=net[1]%>')" value="<%:Delete%>" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="td left" id="<%=net[1]%>-ifc-description">
|
||||
<em><%:Collecting data...%></em>
|
||||
</div>
|
||||
<div class="td">
|
||||
<input type="button" class="cbi-button cbi-button-reload" style="width:100px" onclick="iface_shutdown('<%=net[1]%>', true)" title="<%:Reconnect this interface%>" value="<%:Connect%>" />
|
||||
<input type="button" class="cbi-button cbi-button-reset" style="width:100px" onclick="iface_shutdown('<%=net[1]%>', false)" title="<%:Shutdown this interface%>" value="<%:Stop%>" />
|
||||
<input type="button" class="cbi-button cbi-button-edit" style="width:100px" onclick="location.href='<%=url("admin/network/network", net[1])%>'" title="<%:Edit this interface%>" value="<%:Edit%>" id="<%=net[1]%>-ifc-edit" />
|
||||
<input type="button" class="cbi-button cbi-button-remove" style="width:100px" onclick="iface_delete('<%=net[1]%>')" value="<%:Delete%>" />
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<input type="button" class="cbi-button cbi-button-add" value="<%:Add new interface...%>" onclick="location.href='<%=url("admin/network/iface_add")%>'" />
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -6,29 +6,18 @@
|
|||
{
|
||||
if (ifc && (ifc = ifc[0]))
|
||||
{
|
||||
var html = '';
|
||||
var s = document.getElementById('<%=self.option%>-ifc-status'),
|
||||
img = s.querySelector('img'),
|
||||
info = s.querySelector('span'),
|
||||
html = '<strong><%:Device%>:</strong> %h<br />'.format(ifc.ifname);
|
||||
|
||||
var s = document.getElementById('<%=self.option%>-ifc-signal');
|
||||
if (s)
|
||||
s.innerHTML = String.format(
|
||||
'<img src="<%=resource%>/icons/%s%s.png" style="width:16px; height:16px" />' +
|
||||
'<br /><small>%s</small>',
|
||||
ifc.type, ifc.is_up ? '' : '_disabled',
|
||||
ifc.name
|
||||
);
|
||||
|
||||
var d = document.getElementById('<%=self.option%>-ifc-description');
|
||||
if (d && ifc.ifname)
|
||||
if (ifc.ifname)
|
||||
{
|
||||
if (ifc.is_up)
|
||||
{
|
||||
html += String.format('<strong><%:Uptime%>:</strong> %t<br />', ifc.uptime);
|
||||
}
|
||||
|
||||
if (ifc.macaddr)
|
||||
{
|
||||
html += String.format('<strong><%:MAC-Address%>:</strong> %s<br />', ifc.macaddr);
|
||||
}
|
||||
|
||||
html += String.format(
|
||||
'<strong><%:RX%></strong>: %.2mB (%d <%:Pkts.%>)<br />' +
|
||||
|
@ -38,50 +27,40 @@
|
|||
);
|
||||
|
||||
if (ifc.ipaddrs && ifc.ipaddrs.length)
|
||||
{
|
||||
for (var i = 0; i < ifc.ipaddrs.length; i++)
|
||||
html += String.format(
|
||||
'<strong><%:IPv4%>:</strong> %s<br />',
|
||||
ifc.ipaddrs[i]
|
||||
);
|
||||
}
|
||||
|
||||
if (ifc.ip6addrs && ifc.ip6addrs.length)
|
||||
{
|
||||
for (var i = 0; i < ifc.ip6addrs.length; i++)
|
||||
html += String.format(
|
||||
'<strong><%:IPv6%>:</strong> %s<br />',
|
||||
ifc.ip6addrs[i]
|
||||
);
|
||||
}
|
||||
|
||||
if (ifc.ip6prefix)
|
||||
{
|
||||
html += String.format('<strong><%:IPv6-PD%>:</strong> %s<br />', ifc.ip6prefix);
|
||||
}
|
||||
|
||||
d.innerHTML = html;
|
||||
if (ifc.ip6prefix)
|
||||
html += String.format('<strong><%:IPv6-PD%>:</strong> %s<br />', ifc.ip6prefix);
|
||||
|
||||
info.innerHTML = html;
|
||||
}
|
||||
else if (d)
|
||||
else
|
||||
{
|
||||
d.innerHTML = '<em><%:Interface not present or not connected yet.%></em>';
|
||||
info.innerHTML = '<em><%:Interface not present or not connected yet.%></em>';
|
||||
}
|
||||
|
||||
img.src = '<%=resource%>/icons/%s%s.png'.format(ifc.type, ifc.is_up ? '' : '_disabled');
|
||||
}
|
||||
}
|
||||
);
|
||||
//]]></script>
|
||||
|
||||
<div class="table">
|
||||
<div class="tr cbi-section-table">
|
||||
<div class="td"></div>
|
||||
<div class="td cbi-value-field" style="min-width:16px; padding:3px; text-align:center" id="<%=self.option%>-ifc-signal">
|
||||
<img src="<%=resource%>/icons/ethernet_disabled.png" style="width:16px; height:16px" /><br />
|
||||
<small>?</small>
|
||||
</div>
|
||||
<div class="td cbi-value-field" style="vertical-align:middle; text-align:left; padding:3px" id="<%=self.option%>-ifc-description">
|
||||
<em><%:Collecting data...%></em>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<span class="ifacebadge large" id="<%=self.option%>-ifc-status">
|
||||
<img src="<%=resource%>/icons/ethernet_disabled.png" />
|
||||
<span>
|
||||
<em><%:Collecting data...%></em>
|
||||
</span>
|
||||
</span>
|
||||
|
||||
<%+cbi/valuefooter%>
|
||||
|
|
|
@ -1,27 +1,11 @@
|
|||
<script type="text/javascript">//<![CDATA[
|
||||
function duid2mac(duid) {
|
||||
// DUID-LLT / Ethernet
|
||||
if (duid.length === 28 && duid.substr(0, 8) === '00010001')
|
||||
return duid.substr(16).replace(/(..)(?=..)/g, '$1:').toUpperCase();
|
||||
|
||||
// DUID-LL / Ethernet
|
||||
if (duid.length === 20 && duid.substr(0, 8) === '00030001')
|
||||
return duid.substr(8).replace(/(..)(?=..)/g, '$1:').toUpperCase();
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
var hosts = <%=luci.http.write_json(luci.sys.net.host_hints())%>;
|
||||
|
||||
XHR.poll(5, '<%=url('admin/network/dhcplease_status')%>', null,
|
||||
function(x, st)
|
||||
{
|
||||
var tb = document.getElementById('lease_status_table');
|
||||
if (st && st[0] && tb)
|
||||
{
|
||||
/* clear all rows */
|
||||
while (tb.firstElementChild !== tb.lastElementChild)
|
||||
tb.removeChild(tb.lastElementChild);
|
||||
var rows = [];
|
||||
|
||||
for (var i = 0; i < st[0].length; i++)
|
||||
{
|
||||
|
@ -34,16 +18,15 @@
|
|||
else
|
||||
timestr = String.format('%t', st[0][i].expires);
|
||||
|
||||
tb.appendChild(E('<div class="tr cbi-section-table-row cbi-rowstyle-%d">'.format((i % 2) + 1), [
|
||||
E('<div class="td">', st[0][i].hostname || '?'),
|
||||
E('<div class="td">', st[0][i].ipaddr),
|
||||
E('<div class="td">', st[0][i].macaddr),
|
||||
E('<div class="td">', timestr)
|
||||
]));
|
||||
rows.push([
|
||||
st[0][i].hostname || '?',
|
||||
st[0][i].ipaddr,
|
||||
st[0][i].macaddr,
|
||||
timestr
|
||||
]);
|
||||
}
|
||||
|
||||
if (tb.firstElementChild === tb.lastElementChild)
|
||||
tb.appendChild(E('<div class="tr cbi-section-table-row"><div class="td"><em><br /><%:There are no active leases.%></em></div></div>'));
|
||||
cbi_update_table(tb, rows, '<em><%:There are no active leases.%></em>');
|
||||
}
|
||||
|
||||
var tb6 = document.getElementById('lease6_status_table');
|
||||
|
@ -51,9 +34,7 @@
|
|||
{
|
||||
tb6.parentNode.style.display = 'block';
|
||||
|
||||
/* clear all rows */
|
||||
while (tb6.firstElementChild !== tb6.lastElementChild)
|
||||
tb6.removeChild(tb6.lastElementChild);
|
||||
var rows = [];
|
||||
|
||||
for (var i = 0; i < st[1].length; i++)
|
||||
{
|
||||
|
@ -66,60 +47,49 @@
|
|||
else
|
||||
timestr = String.format('%t', st[1][i].expires);
|
||||
|
||||
var host = hosts[duid2mac(st[1][i].duid)],
|
||||
name = st[1][i].hostname,
|
||||
hint = null;
|
||||
var name = st[1][i].hostname,
|
||||
hint = st[1][i].host_hint;
|
||||
|
||||
if (!name) {
|
||||
if (host)
|
||||
hint = host.name || host.ipv4 || host.ipv6;
|
||||
}
|
||||
else {
|
||||
if (host && host.name && st[1][i].hostname != host.name)
|
||||
hint = host.name;
|
||||
}
|
||||
|
||||
tb6.appendChild(E('<div class="tr cbi-section-table-row cbi-rowstyle-%d" style="max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space: nowrap">'.format((i % 2) + 1), [
|
||||
E('<div class="td">', hint ? '<div style="max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space: nowrap">%h (%h)</div>'.format(name || '?', hint) : (name || '?')),
|
||||
E('<div class="td">', st[1][i].ip6addr),
|
||||
E('<div class="td">', st[1][i].duid),
|
||||
E('<div class="td">', timestr)
|
||||
]));
|
||||
rows.push([
|
||||
hint ? '%h (%h)'.format(name || '?', hint) : (name || '?'),
|
||||
st[1][i].ip6addr,
|
||||
st[1][i].duid,
|
||||
timestr
|
||||
]);
|
||||
}
|
||||
|
||||
if (tb6.firstElementChild === tb6.lastElementChild)
|
||||
tb6.appendChild(E('<div class="tr cbi-section-table-row"><div class="td"><em><br /><%:There are no active leases.%></em></div></div>'));
|
||||
cbi_update_table(tb6, rows, '<em><%:There are no active leases.%></em>');
|
||||
}
|
||||
}
|
||||
);
|
||||
//]]></script>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<legend><%:Active DHCP Leases%></legend>
|
||||
<div class="table cbi-section-table" id="lease_status_table">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th cbi-section-table-cell"><%:Hostname%></div>
|
||||
<div class="th cbi-section-table-cell"><%:IPv4-Address%></div>
|
||||
<div class="th cbi-section-table-cell"><%:MAC-Address%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Leasetime remaining%></div>
|
||||
<div class="cbi-section">
|
||||
<h3><%:Active DHCP Leases%></h3>
|
||||
<div class="table" id="lease_status_table">
|
||||
<div class="tr table-titles">
|
||||
<div class="th"><%:Hostname%></div>
|
||||
<div class="th"><%:IPv4-Address%></div>
|
||||
<div class="th"><%:MAC-Address%></div>
|
||||
<div class="th"><%:Leasetime remaining%></div>
|
||||
</div>
|
||||
<div class="tr cbi-section-table-row">
|
||||
<div class="td" colspan="4"><em><br /><%:Collecting data...%></em></div>
|
||||
<div class="tr placeholder">
|
||||
<div class="td"><em><%:Collecting data...%></em></div>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<fieldset class="cbi-section" style="display:none">
|
||||
<legend><%:Active DHCPv6 Leases%></legend>
|
||||
<div class="table cbi-section-table" id="lease6_status_table">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th cbi-section-table-cell"><%:Host%></div>
|
||||
<div class="th cbi-section-table-cell"><%:IPv6-Address%></div>
|
||||
<div class="th cbi-section-table-cell"><%:DUID%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Leasetime remaining%></div>
|
||||
<div class="cbi-section" style="display:none">
|
||||
<h3><%:Active DHCPv6 Leases%></h3>
|
||||
<div class="table" id="lease6_status_table">
|
||||
<div class="tr table-titles">
|
||||
<div class="th"><%:Host%></div>
|
||||
<div class="th"><%:IPv6-Address%></div>
|
||||
<div class="th"><%:DUID%></div>
|
||||
<div class="th"><%:Leasetime remaining%></div>
|
||||
</div>
|
||||
<div class="tr cbi-section-table-row">
|
||||
<div class="td" colspan="4"><em><br /><%:Collecting data...%></em></div>
|
||||
<div class="tr placeholder">
|
||||
<div class="td"><em><%:Collecting data...%></em></div>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
|
|
@ -1,21 +1,39 @@
|
|||
<script type="text/javascript">//<![CDATA[
|
||||
var switches = [ '<%=table.concat(self.switches, "', '")%>' ];
|
||||
var switches = [ '<%=table.concat(self.switches, "', '")%>' ],
|
||||
tables = document.querySelectorAll('.cbi-section-table');
|
||||
|
||||
function add_status_row(table) {
|
||||
var first_row = table.querySelector('.cbi-section-table-row');
|
||||
if (first_row.classList.contains('port-status'))
|
||||
return first_row;
|
||||
|
||||
var status_row = first_row.parentNode.insertBefore(
|
||||
E('div', { 'class': first_row.className }), first_row);
|
||||
|
||||
first_row.querySelectorAll('.td').forEach(function(td) {
|
||||
status_row.appendChild(td.cloneNode(false));
|
||||
status_row.lastElementChild.removeAttribute('data-title');
|
||||
});
|
||||
|
||||
status_row.firstElementChild.innerHTML = '<%:Port status:%>';
|
||||
status_row.classList.add('port-status') ;
|
||||
|
||||
return status_row;
|
||||
}
|
||||
|
||||
XHR.poll(5, '<%=url('admin/network/switch_status')%>/' + switches.join(','), null,
|
||||
function(x, st)
|
||||
{
|
||||
for (var i = 0; i < switches.length; i++)
|
||||
{
|
||||
var ports = st[switches[i]];
|
||||
var th0 = document.getElementById('portstatus-' + switches[i]);
|
||||
var tr = add_status_row(tables[i]);
|
||||
|
||||
if (th0 && ports && ports.length)
|
||||
if (tr && ports && ports.length)
|
||||
{
|
||||
if (!th0.innerHTML)
|
||||
th0.innerHTML = '<%:Port status:%>';
|
||||
|
||||
for (var j = 0; j < ports.length; j++)
|
||||
{
|
||||
var th = document.getElementById('portstatus-' + switches[i] + '-' + j);
|
||||
var th = tr.querySelector('[data-name="%d"]'.format(j));
|
||||
|
||||
if (!th)
|
||||
continue;
|
||||
|
|
|
@ -0,0 +1,82 @@
|
|||
<script type="text/javascript">//<![CDATA[
|
||||
function wifirate(bss, rx) {
|
||||
var p = rx ? 'rx_' : 'tx_',
|
||||
s = '%.1f <%:Mbit/s%>, %d<%:MHz%>'
|
||||
.format(bss[p+'rate'] / 1000, bss[p+'mhz']),
|
||||
ht = bss[p+'ht'], vht = bss[p+'vht'],
|
||||
mhz = bss[p+'mhz'], nss = bss[p+'nss'],
|
||||
mcs = bss[p+'mcs'], sgi = bss[p+'short_gi'];
|
||||
|
||||
if (ht || vht) {
|
||||
if (vht) s += ', VHT-MCS %d'.format(mcs);
|
||||
if (nss) s += ', VHT-NSS %d'.format(nss);
|
||||
if (ht) s += ', MCS %s'.format(mcs);
|
||||
if (sgi) s += ', <%:Short GI%>';
|
||||
}
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
XHR.poll(5, '<%=url('admin/network/wireless_assoclist')%>', null,
|
||||
function(x, st)
|
||||
{
|
||||
var tb = document.getElementById('wifi_assoclist_table');
|
||||
if (st && tb)
|
||||
{
|
||||
var rows = [];
|
||||
|
||||
st.forEach(function(bss) {
|
||||
var icon;
|
||||
var q = (-1 * (bss.noise - bss.signal)) / 5;
|
||||
if (q < 1)
|
||||
icon = "<%=resource%>/icons/signal-0.png";
|
||||
else if (q < 2)
|
||||
icon = "<%=resource%>/icons/signal-0-25.png";
|
||||
else if (q < 3)
|
||||
icon = "<%=resource%>/icons/signal-25-50.png";
|
||||
else if (q < 4)
|
||||
icon = "<%=resource%>/icons/signal-50-75.png";
|
||||
else
|
||||
icon = "<%=resource%>/icons/signal-75-100.png";
|
||||
|
||||
rows.push([
|
||||
'<span class="ifacebadge" title="%q"><img src="<%=resource%>/icons/wifi.png" /> <a href="%s">%h</a><small> (%h)</small></span>'.format(
|
||||
bss.radio,
|
||||
bss.link,
|
||||
bss.name,
|
||||
bss.ifname),
|
||||
bss.bssid,
|
||||
bss.host_hint ? '%h (%h)'.format(bss.host_name || '?', bss.host_hint) : (bss.host_name || '?'),
|
||||
'<span class="ifacebadge" title="<%:Signal%>: %d <%:dBm%> / <%:Noise%>: %d <%:dBm%> / <%:SNR%>: %d"><img src="%s" /> %d / %d <%:dBm%></span>'.format(
|
||||
bss.signal,
|
||||
bss.noise,
|
||||
bss.signal - bss.noise,
|
||||
icon,
|
||||
bss.signal,
|
||||
bss.noise),
|
||||
E('span', {}, [
|
||||
E('span', wifirate(bss, true)),
|
||||
E('br'),
|
||||
E('span', wifirate(bss, false))
|
||||
])
|
||||
]);
|
||||
});
|
||||
|
||||
cbi_update_table(tb, rows, '<em><%:No information available%></em>');
|
||||
}
|
||||
}
|
||||
);
|
||||
//]]></script>
|
||||
|
||||
<div class="table" id="wifi_assoclist_table">
|
||||
<div class="tr table-titles">
|
||||
<div class="th nowrap"><%:Network%></div>
|
||||
<div class="th hide-xs"><%:MAC-Address%></div>
|
||||
<div class="th nowrap"><%:Host%></div>
|
||||
<div class="th nowrap"><%:Signal%> / <%:Noise%></div>
|
||||
<div class="th nowrap"><%:RX Rate%> / <%:TX Rate%></div>
|
||||
</div>
|
||||
<div class="tr placeholder">
|
||||
<div class="td"><em><%:Collecting data...%></em></div>
|
||||
</div>
|
||||
</div>
|
|
@ -90,25 +90,43 @@
|
|||
<h2 name="content"><%:Join Network: Wireless Scan%></h2>
|
||||
|
||||
<div class="cbi-map">
|
||||
<fieldset class="cbi-section">
|
||||
<div class="table cbi-section-table" style="empty-cells:hide">
|
||||
<div class="cbi-section">
|
||||
<div class="table">
|
||||
<div class="tr table-titles">
|
||||
<div class="th col-1 center"><%:Signal%></div>
|
||||
<div class="th col-5 left"><%:SSID%></div>
|
||||
<div class="th col-2 center"><%:Channel%></div>
|
||||
<div class="th col-2 left"><%:Mode%></div>
|
||||
<div class="th col-3 left"><%:BSSID%></div>
|
||||
<div class="th col-2 left"><%:Encryption%></div>
|
||||
<div class="th cbi-section-actions"> </div>
|
||||
</div>
|
||||
|
||||
<!-- scan list -->
|
||||
<% for i, net in ipairs(scanlist(3)) do net.encryption = net.encryption or { } %>
|
||||
<div class="tr cbi-section-table-row cbi-rowstyle-<%=1 + ((i-1) % 2)%>">
|
||||
<div class="td cbi-value-field" style="width:16px; padding:3px">
|
||||
<div class="tr cbi-rowstyle-<%=1 + ((i-1) % 2)%>">
|
||||
<div class="td col-1 center">
|
||||
<abbr title="<%:Signal%>: <%=net.signal%> <%:dB%> / <%:Quality%>: <%=net.quality%>/<%=net.quality_max%>">
|
||||
<img src="<%=guess_wifi_signal(net)%>" /><br />
|
||||
<small><%=percent_wifi_signal(net)%>%</small>
|
||||
</abbr>
|
||||
</div>
|
||||
<div class="td cbi-value-field" style="vertical-align:middle; text-align:left; padding:3px">
|
||||
<big><strong><%=net.ssid and utl.pcdata(net.ssid) or "<em>%s</em>" % translate("hidden")%></strong></big><br />
|
||||
<strong>Channel:</strong> <%=net.channel%> |
|
||||
<strong>Mode:</strong> <%=net.mode%> |
|
||||
<strong>BSSID:</strong> <%=net.bssid%> |
|
||||
<strong>Encryption:</strong> <%=format_wifi_encryption(net.encryption)%>
|
||||
<div class="td col-5 left" data-title="<%:SSID%>">
|
||||
<strong><%=net.ssid and utl.pcdata(net.ssid) or "<em>%s</em>" % translate("hidden")%></strong>
|
||||
</div>
|
||||
<div class="td cbi-value-field" style="width:40px">
|
||||
<div class="td col-2 center" data-title="<%:Channel%>">
|
||||
<%=net.channel%>
|
||||
</div>
|
||||
<div class="td col-2 left" data-title="<%:Mode%>">
|
||||
<%=net.mode%>
|
||||
</div>
|
||||
<div class="td col-3 left" data-title="<%:BSSID%>">
|
||||
<%=net.bssid%>
|
||||
</div>
|
||||
<div class="td col-2 left" data-title="<%:Encryption%>">
|
||||
<%=format_wifi_encryption(net.encryption)%>
|
||||
</div>
|
||||
<div class="td cbi-section-actions">
|
||||
<form action="<%=url('admin/network/wireless_join')%>" method="post">
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<input type="hidden" name="device" value="<%=utl.pcdata(dev)%>" />
|
||||
|
@ -126,23 +144,23 @@
|
|||
|
||||
<input type="hidden" name="clbridge" value="<%=iw.type == "wl" and 1 or 0%>" />
|
||||
|
||||
<input class="cbi-button cbi-button-apply" type="submit" value="<%:Join Network%>" />
|
||||
<input class="cbi-button cbi-button-action important" type="submit" value="<%:Join Network%>" />
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<!-- /scan list -->
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cbi-page-actions right">
|
||||
<form class="inline" action="<%=url("admin/network/wireless")%>" method="get">
|
||||
<input class="cbi-button cbi-button-reset" type="submit" value="<%:Back to overview%>" />
|
||||
<input class="cbi-button cbi-button-neutral" type="submit" value="<%:Back to overview%>" />
|
||||
</form>
|
||||
<form class="inline" action="<%=url('admin/network/wireless_join')%>" method="post">
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<input type="hidden" name="device" value="<%=utl.pcdata(dev)%>" />
|
||||
<input class="cbi-button cbi-input-find" type="submit" value="<%:Repeat scan%>" />
|
||||
<input class="cbi-button cbi-button-action" type="submit" value="<%:Repeat scan%>" />
|
||||
</form>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -113,32 +113,10 @@
|
|||
|
||||
var is_reconnecting = false;
|
||||
|
||||
function nowrap(s) {
|
||||
return s.replace(/ /g, ' ');
|
||||
}
|
||||
|
||||
function wifirate(bss, rx) {
|
||||
var p = rx ? 'rx_' : 'tx_',
|
||||
s = '%.1f <%:Mbit/s%>, %d<%:MHz%>'
|
||||
.format(bss[p+'rate'] / 1000, bss[p+'mhz']),
|
||||
ht = bss[p+'ht'], vht = bss[p+'vht'],
|
||||
mhz = bss[p+'mhz'], nss = bss[p+'nss'],
|
||||
mcs = bss[p+'mcs'], sgi = bss[p+'short_gi'];
|
||||
|
||||
if (ht || vht) {
|
||||
if (vht) s += ', VHT-MCS %d'.format(mcs);
|
||||
if (nss) s += ', VHT-NSS %d'.format(nss);
|
||||
if (ht) s += ', MCS %s'.format(mcs);
|
||||
if (sgi) s += ', <%:Short GI%>';
|
||||
}
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
function wifi_shutdown(id, toggle) {
|
||||
var reconnect = (toggle.getAttribute('active') == 'false');
|
||||
|
||||
if (!reconnect && !confirm(String.format('<%:Really shut down network?\nYou might lose access to this device if you are connected via this interface.%>')))
|
||||
if (!reconnect && !confirm(<%=luci.http.write_json(translate('Really shut down network? You might lose access to this device if you are connected via this interface'))%>))
|
||||
return;
|
||||
|
||||
is_reconnecting = true;
|
||||
|
@ -176,7 +154,7 @@
|
|||
}
|
||||
|
||||
function wifi_delete(id) {
|
||||
if (!confirm('<%:Really delete this wireless network? The deletion cannot be undone!\nYou might lose access to this device if you are connected via this network.%>'))
|
||||
if (!confirm(<%=luci.http.write_json(translate('Really delete this wireless network? The deletion cannot be undone! You might lose access to this device if you are connected via this network.'))%>))
|
||||
return;
|
||||
|
||||
(new XHR()).post('<%=url('admin/network/wireless_delete')%>/' + id, { token: '<%=token%>' },
|
||||
|
@ -193,20 +171,25 @@
|
|||
{
|
||||
if (st)
|
||||
{
|
||||
var assoctable = document.getElementById('iw-assoclist');
|
||||
if (assoctable)
|
||||
while (assoctable.firstElementChild !== assoctable.lastElementChild)
|
||||
assoctable.removeChild(assoctable.lastElementChild);
|
||||
|
||||
var devup = { };
|
||||
var rowstyle = 1;
|
||||
var radiostate = { };
|
||||
|
||||
st.forEach(function(s) {
|
||||
var r = radiostate[wifidevs[s.id]] || (radiostate[wifidevs[s.id]] = {});
|
||||
|
||||
s.is_assoc = (s.bssid && s.bssid != '00:00:00:00:00:00' && s.channel && s.mode != 'Unknown' && !s.disabled);
|
||||
|
||||
r.up = r.up || s.is_assoc;
|
||||
r.channel = r.channel || s.channel;
|
||||
r.bitrate = r.bitrate || s.bitrate;
|
||||
r.frequency = r.frequency || s.frequency;
|
||||
});
|
||||
|
||||
for( var i = 0; i < st.length; i++ )
|
||||
{
|
||||
var iw = st[i];
|
||||
var is_assoc = (iw.bssid && iw.bssid != '00:00:00:00:00:00' && iw.channel && iw.mode != 'Unknown' && !iw.disabled);
|
||||
var p = iw.quality;
|
||||
var q = is_assoc ? p : -1;
|
||||
var q = iw.is_assoc ? p : -1;
|
||||
|
||||
var icon;
|
||||
if (q < 0)
|
||||
|
@ -222,9 +205,6 @@
|
|||
else
|
||||
icon = "<%=resource%>/icons/signal-75-100.png";
|
||||
|
||||
if (!devup[wifidevs[iw.id]])
|
||||
devup[wifidevs[iw.id]] = is_assoc;
|
||||
|
||||
var sig = document.getElementById(iw.id + '-iw-signal');
|
||||
if (sig)
|
||||
sig.innerHTML = String.format(
|
||||
|
@ -237,13 +217,13 @@
|
|||
{
|
||||
if (!iw.disabled)
|
||||
{
|
||||
toggle.className = 'cbi-button cbi-button-reset';
|
||||
toggle.className = 'cbi-button cbi-button-neutral';
|
||||
toggle.value = '<%:Disable%>';
|
||||
toggle.title = '<%:Shutdown this network%>';
|
||||
}
|
||||
else
|
||||
{
|
||||
toggle.className = 'cbi-button cbi-button-reload';
|
||||
toggle.className = 'cbi-button cbi-button-neutral';
|
||||
toggle.value = '<%:Enable%>';
|
||||
toggle.title = '<%:Activate this network%>';
|
||||
}
|
||||
|
@ -254,7 +234,7 @@
|
|||
var info = document.getElementById(iw.id + '-iw-status');
|
||||
if (info)
|
||||
{
|
||||
if (is_assoc)
|
||||
if (iw.is_assoc)
|
||||
info.innerHTML = String.format(
|
||||
'<strong><%:SSID%>:</strong> %h | ' +
|
||||
'<strong><%:Mode%>:</strong> %s<br />' +
|
||||
|
@ -274,83 +254,23 @@
|
|||
: '<em><%:Wireless is disabled or not associated%></em>'
|
||||
);
|
||||
}
|
||||
|
||||
var dev = document.getElementById(wifidevs[iw.id] + '-iw-devinfo');
|
||||
if (dev)
|
||||
{
|
||||
if (is_assoc)
|
||||
dev.innerHTML = String.format(
|
||||
'<strong><%:Channel%>:</strong> %s (%s <%:GHz%>) | ' +
|
||||
'<strong><%:Bitrate%>:</strong> %s <%:Mbit/s%>',
|
||||
iw.channel ? iw.channel : '?',
|
||||
iw.frequency ? iw.frequency : '?',
|
||||
iw.bitrate ? iw.bitrate : '?'
|
||||
);
|
||||
else
|
||||
dev.innerHTML = '';
|
||||
}
|
||||
|
||||
if (assoctable)
|
||||
{
|
||||
var assoclist = [ ];
|
||||
for (var bssid in iw.assoclist)
|
||||
{
|
||||
assoclist.push(iw.assoclist[bssid]);
|
||||
assoclist[assoclist.length-1].bssid = bssid;
|
||||
}
|
||||
|
||||
assoclist.sort(function(a, b) { a.bssid < b.bssid });
|
||||
|
||||
for (var j = 0; j < assoclist.length; j++)
|
||||
{
|
||||
var icon;
|
||||
var q = (-1 * (assoclist[j].noise - assoclist[j].signal)) / 5;
|
||||
if (q < 1)
|
||||
icon = "<%=resource%>/icons/signal-0.png";
|
||||
else if (q < 2)
|
||||
icon = "<%=resource%>/icons/signal-0-25.png";
|
||||
else if (q < 3)
|
||||
icon = "<%=resource%>/icons/signal-25-50.png";
|
||||
else if (q < 4)
|
||||
icon = "<%=resource%>/icons/signal-50-75.png";
|
||||
else
|
||||
icon = "<%=resource%>/icons/signal-75-100.png";
|
||||
|
||||
var host = hosts[assoclist[j].bssid],
|
||||
name = host ? (host.name || host.ipv4 || host.ipv6) : null,
|
||||
hint = (host && host.name && (host.ipv4 || host.ipv6)) ? (host.ipv4 || host.ipv6) : null;
|
||||
|
||||
assoctable.appendChild(E('<div class="tr cbi-section-table-row cbi-rowstyle-%d">'.format(rowstyle), [
|
||||
E('<div class="td"><span class="ifacebadge" title="%q"><img src="<%=resource%>/icons/wifi.png" /> %h</span></div>'
|
||||
.format(iw.device.name, iw.ifname)),
|
||||
E('<div class="td" style="white-space:nowrap">%h</div>'
|
||||
.format(iw.ssid || '?')),
|
||||
E('<div class="td">%h</div>'
|
||||
.format(assoclist[j].bssid)),
|
||||
E('<div class="td">', hint ? '<div style="max-width:200px;overflow:hidden;text-overflow:ellipsis">%h (%h)</div>'
|
||||
.format(name || '?', hint) : (name || '?')),
|
||||
E('<div class="td"><span class="ifacebadge" title="<%:Signal%>: %d <%:dBm%> / <%:Noise%>: %d <%:dBm%> / <%:SNR%>: %d"><img src="%s" /> %d / %d <%:dBm%></span></div>'
|
||||
.format(assoclist[j].signal, assoclist[j].noise, assoclist[j].signal - assoclist[j].noise, icon, assoclist[j].signal, assoclist[j].noise)),
|
||||
E('<div class="td">', [
|
||||
E('<span style="white-space:nowrap">', wifirate(assoclist[j], true)),
|
||||
E('<br />'),
|
||||
E('<span style="white-space:nowrap">', wifirate(assoclist[j], false))
|
||||
])
|
||||
]));
|
||||
|
||||
rowstyle = (rowstyle == 1) ? 2 : 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (assoctable && assoctable.firstElementChild === assoctable.lastElementChild)
|
||||
assoctable.appendChild(E('<div class="tr cbi-section-table-row"><div class="td"><em><br /><%:No information available%></em></div></div>'));
|
||||
|
||||
for (var dev in devup)
|
||||
for (var dev in radiostate)
|
||||
{
|
||||
var img = document.getElementById(dev + '-iw-upstate');
|
||||
if (img)
|
||||
img.src = '<%=resource%>/icons/wifi_big' + (devup[dev] ? '' : '_disabled') + '.png';
|
||||
img.src = '<%=resource%>/icons/wifi' + (radiostate[dev].up ? '' : '_disabled') + '.png';
|
||||
|
||||
var stat = document.getElementById(dev + '-iw-devinfo');
|
||||
if (stat)
|
||||
stat.innerHTML = String.format(
|
||||
'<strong><%:Channel%>:</strong> %s (%s <%:GHz%>) | ' +
|
||||
'<strong><%:Bitrate%>:</strong> %s <%:Mbit/s%>',
|
||||
radiostate[dev].channel ? radiostate[dev].channel : '?',
|
||||
radiostate[dev].frequency ? radiostate[dev].frequency : '?',
|
||||
radiostate[dev].bitrate ? radiostate[dev].bitrate : '?'
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -359,37 +279,37 @@
|
|||
|
||||
<h2 name="content"><%:Wireless Overview%></h2>
|
||||
|
||||
<fieldset class="cbi-section" style="display:none">
|
||||
<div class="cbi-section" style="display:none">
|
||||
<legend><%:Reconnecting interface%></legend>
|
||||
<img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="vertical-align:middle" />
|
||||
<span id="iw-rc-status"><%:Waiting for changes to be applied...%></span>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<div class="cbi-map">
|
||||
<div id="cbi-wireless-overview" class="cbi-map">
|
||||
|
||||
<% for _, dev in ipairs(devices) do local nets = dev:get_wifinets() %>
|
||||
<!-- device <%=dev:name()%> -->
|
||||
<fieldset class="cbi-section">
|
||||
<div class="table cbi-section-table" style="margin:10px; empty-cells:hide">
|
||||
<div class="cbi-section-node">
|
||||
<div class="table">
|
||||
<!-- physical device -->
|
||||
<div class="tr">
|
||||
<div class="td">
|
||||
<img src="<%=resource%>/icons/wifi_big_disabled.png" id="<%=dev:name()%>-iw-upstate" />
|
||||
<div class="td col-2 center">
|
||||
<span class="ifacebadge"><img src="<%=resource%>/icons/wifi_disabled.png" id="<%=dev:name()%>-iw-upstate" /> <%=dev:name()%></span>
|
||||
</div>
|
||||
<div class="td left">
|
||||
<big><strong><%=guess_wifi_hw(dev)%> (<%=dev:name()%>)</strong></big><br />
|
||||
<div class="td col-7 left">
|
||||
<big><strong><%=guess_wifi_hw(dev)%></strong></big><br />
|
||||
<span id="<%=dev:name()%>-iw-devinfo"></span>
|
||||
</div>
|
||||
<div class="td right">
|
||||
<div class="td cbi-section-actions">
|
||||
<form action="<%=url('admin/network/wireless_join')%>" method="post" class="inline">
|
||||
<input type="hidden" name="device" value="<%=dev:name()%>" />
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<input type="submit" class="cbi-button cbi-button-find" style="width:100px" title="<%:Find and join network%>" value="<%:Scan%>" />
|
||||
<input type="submit" class="cbi-button cbi-button-action" title="<%:Find and join network%>" value="<%:Scan%>" />
|
||||
</form>
|
||||
<form action="<%=url('admin/network/wireless_add')%>" method="post" class="inline">
|
||||
<input type="hidden" name="device" value="<%=dev:name()%>" />
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<input type="submit" class="cbi-button cbi-button-add" style="width:100px" title="<%:Provide new network%>" value="<%:Add%>" />
|
||||
<input type="submit" class="cbi-button cbi-button-add" title="<%:Provide new network%>" value="<%:Add%>" />
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -398,22 +318,22 @@
|
|||
<!-- network list -->
|
||||
<% if #nets > 0 then %>
|
||||
<% for i, net in ipairs(nets) do %>
|
||||
<div class="tr cbi-section-table-row cbi-rowstyle-<%=1 + ((i-1) % 2)%>">
|
||||
<div class="td" id="<%=net:id()%>-iw-signal">
|
||||
<div class="tr cbi-rowstyle-<%=1 + ((i-1) % 2)%>">
|
||||
<div class="td col-2 center" id="<%=net:id()%>-iw-signal">
|
||||
<span class="ifacebadge" title="<%:Not associated%>"><img src="<%=resource%>/icons/signal-none.png" /> 0%</span>
|
||||
</div>
|
||||
<div class="td left" id="<%=net:id()%>-iw-status">
|
||||
<div class="td col-7 left" id="<%=net:id()%>-iw-status">
|
||||
<em><%:Collecting data...%></em>
|
||||
</div>
|
||||
<div class="td right">
|
||||
<input id="<%=net:id()%>-iw-toggle" type="button" class="cbi-button cbi-button-reload" style="width:100px" onclick="wifi_shutdown('<%=net:id()%>', this)" title="<%:Delete this network%>" value="<%:Enable%>" />
|
||||
<input type="button" class="cbi-button cbi-button-edit" style="width:100px" onclick="location.href='<%=net:adminlink()%>'" title="<%:Edit this network%>" value="<%:Edit%>" />
|
||||
<input type="button" class="cbi-button cbi-button-remove" style="width:100px" onclick="wifi_delete('<%=net:id()%>')" title="<%:Delete this network%>" value="<%:Remove%>" />
|
||||
<div class="td cbi-section-actions">
|
||||
<input id="<%=net:id()%>-iw-toggle" type="button" class="cbi-button cbi-button-neutral" onclick="wifi_shutdown('<%=net:id()%>', this)" title="<%:Enable this network%>" value="<%:Enable%>" />
|
||||
<input type="button" class="cbi-button cbi-button-action important" onclick="location.href='<%=net:adminlink()%>'" title="<%:Edit this network%>" value="<%:Edit%>" />
|
||||
<input type="button" class="cbi-button cbi-button-negative" onclick="wifi_delete('<%=net:id()%>')" title="<%:Delete this network%>" value="<%:Remove%>" />
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% else %>
|
||||
<div class="tr cbi-section-table-row cbi-rowstyle-2">
|
||||
<div class="tr cbi-rowstyle-2">
|
||||
<div class="td left">
|
||||
<em><%:No network configured on this device%></em>
|
||||
</div>
|
||||
|
@ -421,30 +341,14 @@
|
|||
<% end %>
|
||||
<!-- /network list -->
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
<!-- /device <%=dev:name()%> -->
|
||||
<% end %>
|
||||
|
||||
|
||||
<h2><%:Associated Stations%></h2>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<div class="table cbi-section-table valign-middle" style="margin:10px" id="iw-assoclist">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th cbi-section-table-cell"></div>
|
||||
<div class="th cbi-section-table-cell"><%:SSID%></div>
|
||||
<div class="th cbi-section-table-cell"><%:MAC-Address%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Host%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Signal%> / <%:Noise%></div>
|
||||
<div class="th cbi-section-table-cell"><%:RX Rate%> / <%:TX Rate%></div>
|
||||
</div>
|
||||
<div class="tr cbi-section-table-row cbi-rowstyle-2">
|
||||
<div class="td">
|
||||
<em><%:Collecting data...%></em>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<%+admin_network/wifi_assoclist%>
|
||||
</div>
|
||||
|
||||
<%+footer%>
|
||||
|
|
|
@ -24,21 +24,22 @@
|
|||
else
|
||||
icon = "<%=resource%>/icons/signal-75-100.png";
|
||||
|
||||
var s = document.getElementById('<%=self.option%>-iw-signal');
|
||||
if (s)
|
||||
s.innerHTML = String.format(
|
||||
'<img src="%s" title="<%:Signal%>: %d <%:dBm%> / <%:Noise%>: %d <%:dBm%>" /><br />' +
|
||||
'<small>%d%%</small>', icon, iw.signal, iw.noise, p
|
||||
);
|
||||
var s = document.getElementById('<%=self.option%>-iw-status'),
|
||||
small = s.querySelector('small'),
|
||||
info = s.querySelector('span');
|
||||
|
||||
var d = document.getElementById('<%=self.option%>-iw-description');
|
||||
if (d && is_assoc)
|
||||
d.innerHTML = String.format(
|
||||
small.innerHTML = info.innerHTML = String.format(
|
||||
'<img src="%s" title="<%:Signal%>: %d <%:dBm%> / <%:Noise%>: %d <%:dBm%>" /> <br />%d%% ',
|
||||
icon, iw.signal, iw.noise, p
|
||||
);
|
||||
|
||||
if (is_assoc)
|
||||
info.innerHTML = String.format(
|
||||
'<strong><%:Mode%>:</strong> %s | ' +
|
||||
'<strong><%:SSID%>:</strong> %h<br />' +
|
||||
'<strong><%:BSSID%>:</strong> %s | ' +
|
||||
'<strong><%:BSSID%>:</strong> %s<br />' +
|
||||
'<strong><%:Encryption%>:</strong> %s<br />' +
|
||||
'<strong><%:Channel%>:</strong> %d (%.3f <%:GHz%>) | ' +
|
||||
'<strong><%:Channel%>:</strong> %d (%.3f <%:GHz%>)<br />' +
|
||||
'<strong><%:Tx-Power%>:</strong> %d <%:dBm%><br />' +
|
||||
'<strong><%:Signal%>:</strong> %d <%:dBm%> | ' +
|
||||
'<strong><%:Noise%>:</strong> %d <%:dBm%><br />' +
|
||||
|
@ -50,8 +51,8 @@
|
|||
iw.txpower, iw.signal, iw.noise,
|
||||
iw.bitrate ? iw.bitrate : 0, iw.country
|
||||
);
|
||||
else if (d)
|
||||
d.innerHTML = String.format(
|
||||
else
|
||||
info.innerHTML = String.format(
|
||||
'<strong><%:SSID%>:</strong> %h | ' +
|
||||
'<strong><%:Mode%>:</strong> %s<br />' +
|
||||
'<em><%:Wireless is disabled or not associated%></em>',
|
||||
|
@ -62,17 +63,13 @@
|
|||
);
|
||||
//]]></script>
|
||||
|
||||
<div class="table">
|
||||
<div class="tr cbi-section-table">
|
||||
<div class="td"></div>
|
||||
<div class="td cbi-value-field" style="width:16px; padding:3px" id="<%=self.option%>-iw-signal">
|
||||
<img src="<%=resource%>/icons/signal-none.png" title="<%:Not associated%>" /><br />
|
||||
<small>0%</small>
|
||||
</div>
|
||||
<div class="td cbi-value-field" style="vertical-align:middle; text-align:left; padding:3px" id="<%=self.option%>-iw-description">
|
||||
<em><%:Collecting data...%></em>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<span class="ifacebadge large" id="<%=self.option%>-iw-status">
|
||||
<small>
|
||||
<img src="<%=resource%>/icons/signal-none.png" title="<%:Not associated%>" /> 
|
||||
</small>
|
||||
<span>
|
||||
<em><%:Collecting data...%></em>
|
||||
</span>
|
||||
</span>
|
||||
|
||||
<%+cbi/valuefooter%>
|
||||
|
|
|
@ -202,22 +202,23 @@
|
|||
data_rx_peak = Math.max(data_rx_peak, data_rx[i]);
|
||||
data_tx_peak = Math.max(data_tx_peak, data_tx[i]);
|
||||
|
||||
if (i > 0)
|
||||
{
|
||||
data_rx_avg = (data_rx_avg + data_rx[i]) / 2;
|
||||
data_tx_avg = (data_tx_avg + data_tx[i]) / 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
data_rx_avg = data_rx[i];
|
||||
data_tx_avg = data_tx[i];
|
||||
}
|
||||
data_rx_avg += data_rx[i];
|
||||
data_tx_avg += data_tx[i];
|
||||
}
|
||||
|
||||
data_rx_avg = (data_rx_avg / Math.max(data_rx.length, 1));
|
||||
data_tx_avg = (data_tx_avg / Math.max(data_tx.length, 1));
|
||||
|
||||
var size = Math.floor(Math.log2(data_max)),
|
||||
div = Math.pow(2, size - (size % 10)),
|
||||
mult = data_max / div,
|
||||
mult = (mult < 5) ? 2 : ((mult < 50) ? 10 : ((mult < 500) ? 100 : 1000));
|
||||
|
||||
data_max = data_max + (mult * div) - (data_max % (mult * div));
|
||||
|
||||
/* remember current timestamp, calculate horizontal scale */
|
||||
data_stamp = data[data.length-1][TIME];
|
||||
data_scale = height / (data_max * 1.1);
|
||||
|
||||
data_scale = height / data_max;
|
||||
|
||||
/* plot data */
|
||||
var pt_rx = '0,' + height;
|
||||
|
@ -244,9 +245,9 @@
|
|||
line_rx.setAttribute('points', pt_rx);
|
||||
line_tx.setAttribute('points', pt_tx);
|
||||
|
||||
label_25.firstChild.data = bandwidth_label(1.1 * 0.25 * data_max);
|
||||
label_50.firstChild.data = bandwidth_label(1.1 * 0.50 * data_max);
|
||||
label_75.firstChild.data = bandwidth_label(1.1 * 0.75 * data_max);
|
||||
label_25.firstChild.data = bandwidth_label(0.25 * data_max);
|
||||
label_50.firstChild.data = bandwidth_label(0.50 * data_max);
|
||||
label_75.firstChild.data = bandwidth_label(0.75 * data_max);
|
||||
|
||||
label_rx_cur.innerHTML = bandwidth_label(data_rx[data_rx.length-1], true);
|
||||
label_tx_cur.innerHTML = bandwidth_label(data_tx[data_tx.length-1], true);
|
||||
|
@ -258,6 +259,8 @@
|
|||
label_tx_peak.innerHTML = bandwidth_label(data_tx_peak, true);
|
||||
}
|
||||
);
|
||||
|
||||
XHR.run();
|
||||
}
|
||||
}, 1000
|
||||
);
|
||||
|
|
|
@ -304,6 +304,8 @@
|
|||
label_otr_peak.innerHTML = Math.floor(data_otr_peak);
|
||||
}
|
||||
);
|
||||
|
||||
XHR.run();
|
||||
}
|
||||
}, 1000
|
||||
);
|
||||
|
|
|
@ -54,8 +54,6 @@
|
|||
swap = swapinfo,
|
||||
connmax = conn_max,
|
||||
conncount = conn_count,
|
||||
leases = stat.dhcp_leases(),
|
||||
leases6 = stat.dhcp6_leases(),
|
||||
wifinets = stat.wifi_networks()
|
||||
}
|
||||
|
||||
|
@ -111,11 +109,6 @@
|
|||
luci.http.prepare_content("application/json")
|
||||
luci.http.write_json(rv)
|
||||
|
||||
return
|
||||
elseif luci.http.formvalue("hosts") == "1" then
|
||||
luci.http.prepare_content("application/json")
|
||||
luci.http.write_json(luci.sys.net.host_hints())
|
||||
|
||||
return
|
||||
end
|
||||
-%>
|
||||
|
@ -131,7 +124,7 @@
|
|||
var pc = Math.floor((100 / mn) * vn);
|
||||
|
||||
return String.format(
|
||||
'<div style="width:200px; position:relative; border:1px solid #999999">' +
|
||||
'<div style="width:100%%; max-width:200px; position:relative; border:1px solid #999999">' +
|
||||
'<div style="background-color:#CCCCCC; width:%d%%; height:15px">' +
|
||||
'<div style="position:absolute; left:0; top:0; text-align:center; width:100%%; color:#000000">' +
|
||||
'<small>%s / %s (%d%%)</small>' +
|
||||
|
@ -141,45 +134,6 @@
|
|||
);
|
||||
}
|
||||
|
||||
function wifirate(bss, rx) {
|
||||
var p = rx ? 'rx_' : 'tx_',
|
||||
s = '%.1f <%:Mbit/s%>, %d<%:MHz%>'
|
||||
.format(bss[p+'rate'] / 1000, bss[p+'mhz']),
|
||||
ht = bss[p+'ht'], vht = bss[p+'vht'],
|
||||
mhz = bss[p+'mhz'], nss = bss[p+'nss'],
|
||||
mcs = bss[p+'mcs'], sgi = bss[p+'short_gi'];
|
||||
|
||||
if (ht || vht) {
|
||||
if (vht) s += ', VHT-MCS %d'.format(mcs);
|
||||
if (nss) s += ', VHT-NSS %d'.format(nss);
|
||||
if (ht) s += ', MCS %s'.format(mcs);
|
||||
if (sgi) s += ', <%:Short GI%>';
|
||||
}
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
function duid2mac(duid) {
|
||||
// DUID-LLT / Ethernet
|
||||
if (duid.length === 28 && duid.substr(0, 8) === '00010001')
|
||||
return duid.substr(16).replace(/(..)(?=..)/g, '$1:').toUpperCase();
|
||||
|
||||
// DUID-LL / Ethernet
|
||||
if (duid.length === 20 && duid.substr(0, 8) === '00030001')
|
||||
return duid.substr(8).replace(/(..)(?=..)/g, '$1:').toUpperCase();
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
var npoll = 1;
|
||||
var hosts = <%=luci.http.write_json(luci.sys.net.host_hints())%>;
|
||||
|
||||
function updateHosts() {
|
||||
XHR.get('<%=REQUEST_URI%>', { hosts: 1 }, function(x, data) {
|
||||
hosts = data;
|
||||
});
|
||||
}
|
||||
|
||||
function labelList(items, offset) {
|
||||
var rv = [ ];
|
||||
|
||||
|
@ -206,7 +160,7 @@
|
|||
return E('div', { class: 'ifacebox' }, [
|
||||
E('div', { class: 'ifacebox-head center ' + (active ? 'active' : '') },
|
||||
E('strong', title)),
|
||||
E('div', { class: 'ifacebox-body' }, childs)
|
||||
E('div', { class: 'ifacebox-body left' }, childs)
|
||||
]);
|
||||
}
|
||||
|
||||
|
@ -220,9 +174,6 @@
|
|||
XHR.poll(5, '<%=REQUEST_URI%>', { status: 1 },
|
||||
function(x, info)
|
||||
{
|
||||
if (!(npoll++ % 5))
|
||||
updateHosts();
|
||||
|
||||
<% if has_mptcp == 0 then %>
|
||||
var us = document.getElementById('upstream_status_table');
|
||||
|
||||
|
@ -333,86 +284,7 @@
|
|||
);
|
||||
<% end %>
|
||||
|
||||
<% if has_dhcp then %>
|
||||
var ls = document.getElementById('lease_status_table');
|
||||
if (ls)
|
||||
{
|
||||
/* clear all rows */
|
||||
while (ls.firstElementChild !== ls.lastElementChild)
|
||||
ls.removeChild(ls.lastElementChild);
|
||||
|
||||
for (var i = 0; i < info.leases.length; i++)
|
||||
{
|
||||
var timestr;
|
||||
|
||||
if (info.leases[i].expires === false)
|
||||
timestr = '<em><%:unlimited%></em>';
|
||||
else if (info.leases[i].expires <= 0)
|
||||
timestr = '<em><%:expired%></em>';
|
||||
else
|
||||
timestr = String.format('%t', info.leases[i].expires);
|
||||
|
||||
ls.appendChild(E('<div class="tr cbi-section-table-row cbi-rowstyle-%d">'.format((i % 2) + 1), [
|
||||
E('<div class="td">', info.leases[i].hostname ? info.leases[i].hostname : '?'),
|
||||
E('<div class="td">', info.leases[i].ipaddr),
|
||||
E('<div class="td">', info.leases[i].macaddr),
|
||||
E('<div class="td">', timestr)
|
||||
]));
|
||||
}
|
||||
|
||||
if (ls.firstElementChild === ls.lastElementChild)
|
||||
ls.appendChild(E('<div class="tr cbi-section-table-row"><div class="td"><em><br /><%:There are no active leases.%></em></div></div>'));
|
||||
}
|
||||
|
||||
var ls6 = document.getElementById('lease6_status_table');
|
||||
if (ls6 && info.leases6)
|
||||
{
|
||||
ls6.parentNode.style.display = 'block';
|
||||
|
||||
/* clear all rows */
|
||||
while (ls6.firstElementChild !== ls6.lastElementChild)
|
||||
ls6.removeChild(ls6.lastElementChild);
|
||||
|
||||
for (var i = 0; i < info.leases6.length; i++)
|
||||
{
|
||||
var timestr;
|
||||
|
||||
if (info.leases6[i].expires === false)
|
||||
timestr = '<em><%:unlimited%></em>';
|
||||
else if (info.leases6[i].expires <= 0)
|
||||
timestr = '<em><%:expired%></em>';
|
||||
else
|
||||
timestr = String.format('%t', info.leases6[i].expires);
|
||||
|
||||
var host = hosts[duid2mac(info.leases6[i].duid)],
|
||||
name = info.leases6[i].hostname,
|
||||
hint = null;
|
||||
|
||||
if (!name) {
|
||||
if (host)
|
||||
hint = host.name || host.ipv4 || host.ipv6;
|
||||
}
|
||||
else {
|
||||
if (host && host.name && info.leases6[i].hostname != host.name)
|
||||
hint = host.name;
|
||||
}
|
||||
|
||||
ls6.appendChild(E('<div class="tr cbi-section-table-row cbi-rowstyle-%d">'.format((i % 2) + 1), [
|
||||
E('<div class="td nowrap">', hint ? '<div>%h (%h)</div>'.format(name || '?', hint) : (name || '?')),
|
||||
E('<div class="td nowrap">', info.leases6[i].ip6addr),
|
||||
E('<div class="td nowrap">', info.leases6[i].duid),
|
||||
E('<div class="td nowrap">', timestr)
|
||||
]));
|
||||
}
|
||||
|
||||
if (ls6.firstElementChild === ls6.lastElementChild)
|
||||
ls6.appendChild(E('<div class="tr cbi-section-table-row"><div class="td"><em><br /><%:There are no active leases.%></em></div></div>'));
|
||||
}
|
||||
<% end %>
|
||||
|
||||
<% if has_wifi then %>
|
||||
var assoclist = [ ];
|
||||
|
||||
var ws = document.getElementById('wifi_status_table');
|
||||
if (ws)
|
||||
{
|
||||
|
@ -429,21 +301,6 @@
|
|||
{
|
||||
var net = dev.networks[nidx];
|
||||
var is_assoc = (net.bssid != '00:00:00:00:00:00' && net.channel && !net.disabled);
|
||||
var num_assoc = 0;
|
||||
|
||||
for (var bssid in net.assoclist)
|
||||
{
|
||||
var bss = net.assoclist[bssid];
|
||||
|
||||
bss.bssid = bssid;
|
||||
bss.link = net.link;
|
||||
bss.name = net.name;
|
||||
bss.ifname = net.ifname;
|
||||
bss.radio = dev.name;
|
||||
|
||||
assoclist.push(bss);
|
||||
num_assoc++;
|
||||
}
|
||||
|
||||
var icon;
|
||||
if (!is_assoc)
|
||||
|
@ -466,7 +323,7 @@
|
|||
'<%:Mode%>', net.mode,
|
||||
'<%:BSSID%>', is_assoc ? (net.bssid || '-') : null,
|
||||
'<%:Encryption%>', is_assoc ? net.encryption : null,
|
||||
'<%:Associations%>', is_assoc ? (num_assoc || '-') : null,
|
||||
'<%:Associations%>', is_assoc ? (net.num_assoc || '-') : null,
|
||||
null, is_assoc ? null : E('em', '<%:Wireless is disabled or not associated%>')));
|
||||
}
|
||||
|
||||
|
@ -481,62 +338,6 @@
|
|||
if (!ws.lastElementChild)
|
||||
ws.appendChild(E('<em><%:No information available%></em>'));
|
||||
}
|
||||
|
||||
var ac = document.getElementById('wifi_assoc_table');
|
||||
if (ac)
|
||||
{
|
||||
/* clear all rows */
|
||||
while (ac.firstElementChild !== ac.lastElementChild)
|
||||
ac.removeChild(ac.lastElementChild);
|
||||
|
||||
assoclist.sort(function(a, b) {
|
||||
return (a.name == b.name)
|
||||
? (a.bssid < b.bssid)
|
||||
: (a.name > b.name )
|
||||
;
|
||||
});
|
||||
|
||||
for (var i = 0; i < assoclist.length; i++)
|
||||
{
|
||||
var icon;
|
||||
var q = (-1 * (assoclist[i].noise - assoclist[i].signal)) / 5;
|
||||
if (q < 1)
|
||||
icon = "<%=resource%>/icons/signal-0.png";
|
||||
else if (q < 2)
|
||||
icon = "<%=resource%>/icons/signal-0-25.png";
|
||||
else if (q < 3)
|
||||
icon = "<%=resource%>/icons/signal-25-50.png";
|
||||
else if (q < 4)
|
||||
icon = "<%=resource%>/icons/signal-50-75.png";
|
||||
else
|
||||
icon = "<%=resource%>/icons/signal-75-100.png";
|
||||
|
||||
var host = hosts[assoclist[i].bssid],
|
||||
name = host ? (host.name || host.ipv4 || host.ipv6) : null,
|
||||
hint = (host && host.name && (host.ipv4 || host.ipv6)) ? (host.ipv4 || host.ipv6) : null;
|
||||
|
||||
ac.appendChild(E('<div class="tr cbi-section-table-row cbi-rowstyle-%d">'.format(1 + (i % 2)), [
|
||||
E('<div class="td"><span class="ifacebadge" title="%q"><img src="<%=resource%>/icons/wifi.png" /> %h</span></div>'
|
||||
.format(assoclist[i].radio, assoclist[i].ifname)),
|
||||
E('<div class="td"><a href="%s" style="white-space:nowrap">%h</a></div>'
|
||||
.format(assoclist[i].link, assoclist[i].name)),
|
||||
E('<div class="td">',
|
||||
assoclist[i].bssid),
|
||||
E('<div class="td nowrap">',
|
||||
hint ? '<div>%h (%h)</div>'.format(name || '?', hint) : (name || '?')),
|
||||
E('<div class="td"><span class="ifacebadge" title="<%:Signal%>: %d <%:dBm%> / <%:Noise%>: %d <%:dBm%> / <%:SNR%>: %d"><img src="%s" /> %d / %d <%:dBm%></span></div>'
|
||||
.format(assoclist[i].signal, assoclist[i].noise, assoclist[i].signal - assoclist[i].noise, icon, assoclist[i].signal, assoclist[i].noise)),
|
||||
E('<div class="td nowrap">', [
|
||||
E('<span style="white-space:nowrap">', wifirate(assoclist[i], true)),
|
||||
E('<br />'),
|
||||
E('<span style="white-space:nowrap">', wifirate(assoclist[i], false))
|
||||
])
|
||||
]));
|
||||
}
|
||||
|
||||
if (ac.firstElementChild === ac.lastElementChild)
|
||||
ac.appendChild(E('<div class="tr cbi-section-table-row"><div class="td"><em><br /><%:No information available%></em></div></div>'));
|
||||
}
|
||||
<% end %>
|
||||
|
||||
var e;
|
||||
|
@ -594,8 +395,8 @@
|
|||
|
||||
<h2 name="content"><%:Status%></h2>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<legend><%:System%></legend>
|
||||
<div class="cbi-section">
|
||||
<h3><%:System%></h3>
|
||||
|
||||
<div class="table" width="100%">
|
||||
<div class="tr"><div class="td left" width="33%"><%:Hostname%></div><div class="td left"><%=luci.sys.hostname() or "?"%></div></div>
|
||||
|
@ -610,79 +411,51 @@
|
|||
<div class="tr"><div class="td left" width="33%"><%:Uptime%></div><div class="td left" id="uptime">-</div></div>
|
||||
<div class="tr"><div class="td left" width="33%"><%:Load Average%></div><div class="td left" id="loadavg">-</div></div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<legend><%:Memory%></legend>
|
||||
<div class="cbi-section">
|
||||
<h3><%:Memory%></h3>
|
||||
|
||||
<div class="table" width="100%">
|
||||
<div class="tr"><div class="td left" width="33%"><%:Total Available%></div><div class="td left" id="memtotal">-</div></div>
|
||||
<div class="tr"><div class="td left" width="33%"><%:Free%></div><div class="td left" id="memfree">-</div></div>
|
||||
<div class="tr"><div class="td left" width="33%"><%:Buffered%></div><div class="td left" id="membuff">-</div></div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<% if swapinfo.total > 0 then %>
|
||||
<fieldset class="cbi-section">
|
||||
<legend><%:Swap%></legend>
|
||||
<div class="cbi-section">
|
||||
<h3><%:Swap%></h3>
|
||||
|
||||
<div class="table" width="100%">
|
||||
<div class="tr"><div class="td left" width="33%"><%:Total Available%></div><div class="td left" id="swaptotal">-</div></div>
|
||||
<div class="tr"><div class="td left" width="33%"><%:Free%></div><div class="td left" id="swapfree">-</div></div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<legend><%:Network%></legend>
|
||||
<% if has_mptcp == "0" then %>
|
||||
<div class="cbi-section">
|
||||
<h3><%:Network%></h3>
|
||||
|
||||
<div id="upstream_status_table" class="network-status-table">
|
||||
<em><%:Collecting data...%></em>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<div class="table" width="100%">
|
||||
<div class="tr"><div class="td left" width="33%"><%:Active Connections%></div><div class="td left" id="conns">-</div></div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<% if has_dhcp then %>
|
||||
<fieldset class="cbi-section">
|
||||
<legend><%:DHCP Leases%></legend>
|
||||
|
||||
<div class="table cbi-section-table" id="lease_status_table">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th"><%:Hostname%></div>
|
||||
<div class="th"><%:IPv4-Address%></div>
|
||||
<div class="th"><%:MAC-Address%></div>
|
||||
<div class="th"><%:Leasetime remaining%></div>
|
||||
</div>
|
||||
<div class="tr cbi-section-table-row">
|
||||
<div class="td" colspan="4"><em><br /><%:Collecting data...%></em></div>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="cbi-section" style="display:none">
|
||||
<legend><%:DHCPv6 Leases%></legend>
|
||||
|
||||
<div class="table cbi-section-table" id="lease6_status_table">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th"><%:Host%></div>
|
||||
<div class="th"><%:IPv6-Address%></div>
|
||||
<div class="th"><%:DUID%></div>
|
||||
<div class="th"><%:Leasetime remaining%></div>
|
||||
</div>
|
||||
<div class="tr cbi-section-table-row">
|
||||
<div class="td" colspan="4"><em><br /><%:Collecting data...%></em></div>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<% end %>
|
||||
<%
|
||||
if has_dhcp then
|
||||
include("admin_network/lease_status")
|
||||
end
|
||||
%>
|
||||
|
||||
<% if has_dsl then %>
|
||||
<fieldset class="cbi-section">
|
||||
<legend><%:DSL%></legend>
|
||||
<div class="cbi-section">
|
||||
<h3><%:DSL%></h3>
|
||||
|
||||
<div class="table" width="100%">
|
||||
<div class="tr">
|
||||
<div class="td left" width="33%" style="vertical-align:top"><%:DSL Status%></div>
|
||||
|
@ -696,35 +469,23 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<% if has_wifi then %>
|
||||
<fieldset class="cbi-section">
|
||||
<legend><%:Wireless%></legend>
|
||||
<div class="cbi-section">
|
||||
<h3><%:Wireless%></h3>
|
||||
|
||||
<div id="wifi_status_table" class="network-status-table">
|
||||
<em><%:Collecting data...%></em>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<legend><%:Associated Stations%></legend>
|
||||
<div class="cbi-section">
|
||||
<h3><%:Associated Stations%></h3>
|
||||
|
||||
<div class="table cbi-section-table valign-middle" id="wifi_assoc_table">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th"> </div>
|
||||
<div class="th"><%:Network%></div>
|
||||
<div class="th"><%:MAC-Address%></div>
|
||||
<div class="th"><%:Host%></div>
|
||||
<div class="th"><%:Signal%> / <%:Noise%></div>
|
||||
<div class="th"><%:RX Rate%> / <%:TX Rate%></div>
|
||||
</div>
|
||||
<div class="tr cbi-section-table-row">
|
||||
<div class="td" colspan="6"><em><br /><%:Collecting data...%></em></div>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<%+admin_network/wifi_assoclist%>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<%-
|
||||
|
|
|
@ -62,6 +62,7 @@
|
|||
|
||||
<%+header%>
|
||||
|
||||
<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
|
||||
<style type="text/css">
|
||||
span:target {
|
||||
color: blue;
|
||||
|
@ -70,7 +71,6 @@
|
|||
</style>
|
||||
|
||||
<h2 name="content"><%:Firewall Status%></h2>
|
||||
<br />
|
||||
|
||||
<% if has_ip6tables then %>
|
||||
<ul class="cbi-tabmenu">
|
||||
|
@ -88,69 +88,69 @@
|
|||
<input type="submit" class="cbi-button" name="restart" value="<%:Restart Firewall%>" />
|
||||
</form>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<div class="cbi-section">
|
||||
|
||||
<% for _, tbl in ipairs(tables) do chaincnt = 0 %>
|
||||
<h3><%:Table%>: <%=tbl%></h3>
|
||||
<div class="table cbi-section-table" style="font-size:90%">
|
||||
<% for _, chain in ipairs(ipt:chains(tbl)) do
|
||||
rowcnt = 0
|
||||
chaincnt = chaincnt + 1
|
||||
chaininfo = ipt:chain(tbl, chain)
|
||||
%>
|
||||
<div class="tr cbi-section-table-titles cbi-rowstyle-<%=rowstyle()%>">
|
||||
<div class="th cbi-section-table-cell" style="text-align:left" colspan="11">
|
||||
<br /><span 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 -%>)</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tr cbi-section-table-descr">
|
||||
<div class="th cbi-section-table-cell"><%:Pkts.%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Traffic%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Target%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Prot.%></div>
|
||||
<div class="th cbi-section-table-cell"><%:In%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Out%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Source%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Destination%></div>
|
||||
<div class="th cbi-section-table-cell" style="width:30%"><%:Options%></div>
|
||||
</div>
|
||||
|
||||
<% for _, rule in ipairs(ipt:find({table=tbl, chain=chain})) do %>
|
||||
<div class="tr cbi-section-table-row cbi-rowstyle-<%=rowstyle()%>">
|
||||
<div class="td"><%=rule.packets%></div>
|
||||
<div class="td" style="white-space: nowrap"><%=wba.byte_format(rule.bytes)%></div>
|
||||
<div class="td"><%=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" style="width:30%"><small><%=#rule.options > 0 and luci.util.pcdata(table.concat(rule.options, " ")) or "-"%></small></div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% 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>
|
||||
|
||||
<% if rowcnt == 1 then %>
|
||||
<div class="tr cbi-section-table-titles cbi-rowstyle-<%=rowstyle()%>">
|
||||
<div class="td" colspan="9"><em><%:No rules in this chain%></em></div>
|
||||
<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>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
<% if chaincnt == 0 then %>
|
||||
<div class="tr cbi-section-table-titles cbi-rowstyle-<%=rowstyle()%>">
|
||||
<div class="td" colspan="9"><em><%:No chains in this table%></em></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>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<% if chaincnt == 0 then %>
|
||||
<em><%:No chains in this table%></em>
|
||||
<% end %>
|
||||
|
||||
<br /><br />
|
||||
<% end %>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<%+footer%>
|
||||
|
|
|
@ -237,6 +237,8 @@
|
|||
label_15_peak.innerHTML = (data_15_peak / 100).toFixed(2);
|
||||
}
|
||||
);
|
||||
|
||||
XHR.run();
|
||||
}
|
||||
}, 1000
|
||||
);
|
||||
|
|
|
@ -32,28 +32,30 @@
|
|||
|
||||
<%+header%>
|
||||
|
||||
<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
|
||||
|
||||
<div class="cbi-map" id="cbi-network">
|
||||
<h2 name="content"><%:Routes%></h2>
|
||||
<div class="cbi-map-descr"><%:The following rules are currently active on this system.%></div>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<div class="cbi-section">
|
||||
<legend>ARP</legend>
|
||||
<div class="cbi-section-node">
|
||||
<div class="table cbi-section-table">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th cbi-section-table-cell"><%_<abbr title="Internet Protocol Version 4">IPv4</abbr>-Address%></div>
|
||||
<div class="th cbi-section-table-cell"><%_<abbr title="Media Access Control">MAC</abbr>-Address%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Interface%></div>
|
||||
<div class="table">
|
||||
<div class="tr table-titles">
|
||||
<div class="th"><%_<abbr title="Internet Protocol Version 4">IPv4</abbr>-Address%></div>
|
||||
<div class="th"><%_<abbr title="Media Access Control">MAC</abbr>-Address%></div>
|
||||
<div class="th"><%:Interface%></div>
|
||||
</div>
|
||||
|
||||
<%
|
||||
for _, v in ipairs(ip.neighbors({ family = 4 })) do
|
||||
if v.mac then
|
||||
%>
|
||||
<div class="tr cbi-section-table-row cbi-rowstyle-<%=(style and 1 or 2)%>">
|
||||
<div class="td cbi-value-field"><%=v.dest%></div>
|
||||
<div class="td cbi-value-field"><%=v.mac%></div>
|
||||
<div class="td cbi-value-field"><%=luci.tools.webadmin.iface_get_network(v.dev) or '(' .. v.dev .. ')'%></div>
|
||||
<div class="tr cbi-rowstyle-<%=(style and 1 or 2)%>">
|
||||
<div class="td"><%=v.dest%></div>
|
||||
<div class="td"><%=v.mac%></div>
|
||||
<div class="td"><%=luci.tools.webadmin.iface_get_network(v.dev) or '(' .. v.dev .. ')'%></div>
|
||||
</div>
|
||||
<%
|
||||
style = not style
|
||||
|
@ -62,61 +64,57 @@
|
|||
%>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<br />
|
||||
</div>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<div class="cbi-section">
|
||||
<legend><%_Active <abbr title="Internet Protocol Version 4">IPv4</abbr>-Routes%></legend>
|
||||
|
||||
<div class="cbi-section-node">
|
||||
<div class="table cbi-section-table">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th cbi-section-table-cell"><%:Network%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Target%></div>
|
||||
<div class="th cbi-section-table-cell"><%_<abbr title="Internet Protocol Version 4">IPv4</abbr>-Gateway%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Metric%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Table%></div>
|
||||
<div class="table">
|
||||
<div class="tr table-titles">
|
||||
<div class="th"><%:Network%></div>
|
||||
<div class="th"><%:Target%></div>
|
||||
<div class="th"><%_<abbr title="Internet Protocol Version 4">IPv4</abbr>-Gateway%></div>
|
||||
<div class="th"><%:Metric%></div>
|
||||
<div class="th"><%:Table%></div>
|
||||
</div>
|
||||
<% for _, v in ipairs(ip.routes({ family = 4, type = 1 })) do %>
|
||||
<div class="tr cbi-section-table-row cbi-rowstyle-<%=(style and 1 or 2)%>">
|
||||
<div class="td cbi-value-field"><%=luci.tools.webadmin.iface_get_network(v.dev) or v.dev%></div>
|
||||
<div class="td cbi-value-field"><%=v.dest%></div>
|
||||
<div class="td cbi-value-field"><%=v.gw%></div>
|
||||
<div class="td cbi-value-field"><%=v.metric or 0%></div>
|
||||
<div class="td cbi-value-field"><%=rtn[v.table] or v.table%></div>
|
||||
<div class="tr cbi-rowstyle-<%=(style and 1 or 2)%>">
|
||||
<div class="td"><%=luci.tools.webadmin.iface_get_network(v.dev) or v.dev%></div>
|
||||
<div class="td"><%=v.dest%></div>
|
||||
<div class="td"><%=v.gw or "-"%></div>
|
||||
<div class="td"><%=v.metric or 0%></div>
|
||||
<div class="td"><%=rtn[v.table] or v.table%></div>
|
||||
</div>
|
||||
<% style = not style end %>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<br />
|
||||
</div>
|
||||
|
||||
<%
|
||||
if nixio.fs.access("/proc/net/ipv6_route") then
|
||||
style = true
|
||||
%>
|
||||
<fieldset class="cbi-section">
|
||||
<div class="cbi-section">
|
||||
<legend><%_Active <abbr title="Internet Protocol Version 6">IPv6</abbr>-Routes%></legend>
|
||||
|
||||
<div class="cbi-section-node">
|
||||
<div class="table cbi-section-table">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th cbi-section-table-cell"><%:Network%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Target%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Source%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Metric%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Table%></div>
|
||||
<div class="table">
|
||||
<div class="tr table-titles">
|
||||
<div class="th"><%:Network%></div>
|
||||
<div class="th"><%:Target%></div>
|
||||
<div class="th"><%:Source%></div>
|
||||
<div class="th"><%:Metric%></div>
|
||||
<div class="th"><%:Table%></div>
|
||||
</div>
|
||||
<%
|
||||
for _, v in ipairs(ip.routes({ family = 6, type = 1 })) do
|
||||
if v.dest and not v.dest:is6linklocal() then
|
||||
%>
|
||||
<div class="tr cbi-section-table-row cbi-rowstyle-<%=(style and 1 or 2)%>">
|
||||
<div class="td cbi-value-field"><%=luci.tools.webadmin.iface_get_network(v.dev) or '(' .. v.dev .. ')'%></div>
|
||||
<div class="td cbi-value-field"><%=v.dest%></div>
|
||||
<div class="td cbi-value-field"><%=v.from%></div>
|
||||
<div class="td cbi-value-field"><%=v.metric or 0%></div>
|
||||
<div class="td cbi-value-field"><%=rtn[v.table] or v.table%></div>
|
||||
<div class="tr cbi-rowstyle-<%=(style and 1 or 2)%>">
|
||||
<div class="td"><%=luci.tools.webadmin.iface_get_network(v.dev) or '(' .. v.dev .. ')'%></div>
|
||||
<div class="td"><%=v.dest%></div>
|
||||
<div class="td"><%=v.from%></div>
|
||||
<div class="td"><%=v.metric or 0%></div>
|
||||
<div class="td"><%=rtn[v.table] or v.table%></div>
|
||||
</div>
|
||||
<%
|
||||
style = not style
|
||||
|
@ -125,27 +123,25 @@
|
|||
%>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<br />
|
||||
</div>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<div class="cbi-section">
|
||||
<legend><%:IPv6 Neighbours%></legend>
|
||||
|
||||
<div class="cbi-section-node">
|
||||
<div class="table cbi-section-table">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th cbi-section-table-cell"><%:IPv6-Address%></div>
|
||||
<div class="th cbi-section-table-cell"><%:MAC-Address%></div>
|
||||
<div class="th cbi-section-table-cell"><%:Interface%></div>
|
||||
<div class="table">
|
||||
<div class="tr table-titles">
|
||||
<div class="th"><%:IPv6-Address%></div>
|
||||
<div class="th"><%:MAC-Address%></div>
|
||||
<div class="th"><%:Interface%></div>
|
||||
</div>
|
||||
<%
|
||||
for _, v in ipairs(ip.neighbors({ family = 6 })) do
|
||||
if v.dest and not v.dest:is6linklocal() and v.mac then
|
||||
%>
|
||||
<div class="tr cbi-section-table-row cbi-rowstyle-<%=(style and 1 or 2)%>">
|
||||
<div class="td cbi-value-field"><%=v.dest%></div>
|
||||
<div class="td cbi-value-field"><%=v.mac%></div>
|
||||
<div class="td cbi-value-field"><%=luci.tools.webadmin.iface_get_network(v.dev) or '(' .. v.dev .. ')'%></div>
|
||||
<div class="tr cbi-rowstyle-<%=(style and 1 or 2)%>">
|
||||
<div class="td"><%=v.dest%></div>
|
||||
<div class="td"><%=v.mac%></div>
|
||||
<div class="td"><%=luci.tools.webadmin.iface_get_network(v.dev) or '(' .. v.dev .. ')'%></div>
|
||||
</div>
|
||||
<%
|
||||
style = not style
|
||||
|
@ -154,8 +150,7 @@
|
|||
%>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<br />
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -276,7 +276,7 @@
|
|||
function wireless_label(dbm, noise)
|
||||
{
|
||||
if (noise)
|
||||
return String.format("%d <%:dBm%> (SNR %d <%:dBm%>)", noise_floor + dbm - 255, dbm - noise);
|
||||
return String.format("%d <%:dBm%> (SNR %d <%:dB%>)", noise_floor + dbm - 255, dbm - noise);
|
||||
else
|
||||
return String.format("%d <%:dBm%>", noise_floor + dbm - 255);
|
||||
}
|
||||
|
@ -308,6 +308,8 @@
|
|||
label_rate_peak.innerHTML = rate_label(data_rate_peak);
|
||||
}
|
||||
);
|
||||
|
||||
XHR.run();
|
||||
}
|
||||
}, 1000
|
||||
);
|
||||
|
|
|
@ -13,84 +13,77 @@
|
|||
<li class="cbi-tab-disabled"><a href="<%=REQUEST_URI%>/backupfiles"><%:Configuration%></a></li>
|
||||
</ul>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<legend><%:Backup / Restore%></legend>
|
||||
<div class="cbi-section-descr"><%:Click "Generate archive" to download a tar archive of the current configuration files. To reset the firmware to its initial state, click "Perform reset" (only possible with squashfs images).%></div>
|
||||
<div class="cbi-section-node">
|
||||
<form class="inline" method="post" action="<%=url('admin/system/flashops/backup')%>">
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<div class="cbi-value<% if not reset_avail then %> cbi-value-last<% end %>">
|
||||
<label class="cbi-value-title" for="image"><%:Download backup%>:</label>
|
||||
<div class="cbi-value-field">
|
||||
<input class="cbi-button cbi-button-apply" type="submit" name="backup" value="<%:Generate archive%>" />
|
||||
</div>
|
||||
<div class="cbi-section">
|
||||
<h3><%:Backup / Restore%></h3>
|
||||
<div class="cbi-section-descr"><%:Click "Generate archive" to download a tar archive of the current configuration files. To reset the firmware to its initial state, click "Perform reset" (only possible with squashfs images).%></div>
|
||||
<div class="cbi-section-node">
|
||||
<form class="inline" method="post" action="<%=url('admin/system/flashops/backup')%>">
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<div class="cbi-value<% if not reset_avail then %> cbi-value-last<% end %>">
|
||||
<label class="cbi-value-title" for="image"><%:Download backup%>:</label>
|
||||
<div class="cbi-value-field">
|
||||
<input class="cbi-button cbi-button-action important" type="submit" name="backup" value="<%:Generate archive%>" />
|
||||
</div>
|
||||
</form>
|
||||
<% if reset_avail then %>
|
||||
<form class="inline" method="post" action="<%=url('admin/system/flashops/reset')%>">
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<div class="cbi-value cbi-value-last">
|
||||
<label class="cbi-value-title"><%:Reset to defaults%>:</label>
|
||||
<div class="cbi-value-field">
|
||||
<input onclick="return confirm('<%:Really reset all changes?%>')" class="cbi-button cbi-button-reset" type="submit" name="reset" value="<%:Perform reset%>" />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<% end %>
|
||||
</div>
|
||||
<br />
|
||||
<div class="cbi-section-descr"><%:To restore configuration files, you can upload a previously generated backup archive here.%></div>
|
||||
<div class="cbi-section-node">
|
||||
<form class="inline" method="post" action="<%=url('admin/system/flashops/restore')%>" enctype="multipart/form-data">
|
||||
<div class="cbi-value cbi-value-last">
|
||||
<label class="cbi-value-title" for="archive"><%:Restore backup%>:</label>
|
||||
<div class="cbi-value-field">
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<input type="file" name="archive" id="archive" />
|
||||
<input type="submit" class="cbi-button cbi-input-apply" name="restore" value="<%:Upload archive...%>" />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<% if reset_avail then %>
|
||||
<div class="alert-message warning"><%:Custom files (certificates, scripts) may remain on the system. To prevent this, perform a factory-reset first.%></div>
|
||||
<form class="inline" method="post" action="<%=url('admin/system/flashops/reset')%>">
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<div class="cbi-value cbi-value-last">
|
||||
<label class="cbi-value-title"><%:Reset to defaults%>:</label>
|
||||
<div class="cbi-value-field">
|
||||
<input onclick="return confirm('<%:Really reset all changes?%>')" class="cbi-button cbi-button-reset" type="submit" name="reset" value="<%:Perform reset%>" />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<% end %>
|
||||
</fieldset>
|
||||
</div>
|
||||
<div class="cbi-section-descr"><%:To restore configuration files, you can upload a previously generated backup archive here.%></div>
|
||||
<div class="cbi-section-node">
|
||||
<form class="inline" method="post" action="<%=url('admin/system/flashops/restore')%>" enctype="multipart/form-data">
|
||||
<div class="cbi-value cbi-value-last">
|
||||
<label class="cbi-value-title" for="archive"><%:Restore backup%>:</label>
|
||||
<div class="cbi-value-field">
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<input type="file" name="archive" id="archive" />
|
||||
<input type="submit" class="cbi-button cbi-button-action important" name="restore" value="<%:Upload archive...%>" />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<% if reset_avail then %>
|
||||
<div class="alert-message warning"><%:Custom files (certificates, scripts) may remain on the system. To prevent this, perform a factory-reset first.%></div>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<legend><%:Flash new firmware image%></legend>
|
||||
<% if upgrade_avail then %>
|
||||
<form method="post" action="<%=url('admin/system/flashops/sysupgrade')%>" enctype="multipart/form-data">
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<div class="cbi-section-descr"><%:Upload a sysupgrade-compatible image here to replace the running firmware. Check "Keep settings" to retain the current configuration (requires a compatible firmware image).%></div>
|
||||
<div class="cbi-section-node">
|
||||
<div class="cbi-value">
|
||||
<label class="cbi-value-title" for="keep"><%:Keep settings%>:</label>
|
||||
<div class="cbi-value-field">
|
||||
<input type="checkbox" name="keep" id="keep" checked="checked" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="cbi-value cbi-value-last<% if image_invalid then %> cbi-value-error<% end %>">
|
||||
<label class="cbi-value-title" for="image"><%:Image%>:</label>
|
||||
<div class="cbi-value-field">
|
||||
<input type="file" name="image" id="image" />
|
||||
<input type="submit" class="cbi-button cbi-input-apply" value="<%:Flash image...%>" />
|
||||
</div>
|
||||
<div class="cbi-section">
|
||||
<h3><%:Flash new firmware image%></h3>
|
||||
<% if upgrade_avail then %>
|
||||
<form method="post" action="<%=url('admin/system/flashops/sysupgrade')%>" enctype="multipart/form-data">
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<div class="cbi-section-descr"><%:Upload a sysupgrade-compatible image here to replace the running firmware. Check "Keep settings" to retain the current configuration (requires a compatible firmware image).%></div>
|
||||
<div class="cbi-section-node">
|
||||
<div class="cbi-value">
|
||||
<label class="cbi-value-title" for="keep"><%:Keep settings%>:</label>
|
||||
<div class="cbi-value-field">
|
||||
<input type="checkbox" name="keep" id="keep" checked="checked" />
|
||||
</div>
|
||||
</div>
|
||||
<% if image_invalid then %>
|
||||
<div class="cbi-section-error"><%:The uploaded image file does not contain a supported format. Make sure that you choose the generic image format for your platform. %></div>
|
||||
<% end %>
|
||||
</form>
|
||||
<% else %>
|
||||
<div class="cbi-section-descr"><%:Sorry, there is no sysupgrade support present; a new firmware image must be flashed manually. Please refer to the wiki for device specific install instructions.%></div>
|
||||
<% end %>
|
||||
</fieldset>
|
||||
|
||||
</fieldset>
|
||||
<div class="cbi-value cbi-value-last<% if image_invalid then %> cbi-value-error<% end %>">
|
||||
<label class="cbi-value-title" for="image"><%:Image%>:</label>
|
||||
<div class="cbi-value-field">
|
||||
<input type="file" name="image" id="image" />
|
||||
<input type="submit" class="cbi-button cbi-button-action important" value="<%:Flash image...%>" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% if image_invalid then %>
|
||||
<div class="cbi-section-error"><%:The uploaded image file does not contain a supported format. Make sure that you choose the generic image format for your platform. %></div>
|
||||
<% end %>
|
||||
</form>
|
||||
<% else %>
|
||||
<div class="cbi-section-descr"><%:Sorry, there is no sysupgrade support present; a new firmware image must be flashed manually. Please refer to the wiki for device specific install instructions.%></div>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
<%+footer%>
|
||||
|
|
|
@ -44,6 +44,8 @@ end
|
|||
|
||||
<%+header%>
|
||||
|
||||
<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
|
||||
|
||||
<h2 name="content"><%:Software%></h2>
|
||||
|
||||
<div class="cbi-map">
|
||||
|
@ -57,8 +59,8 @@ end
|
|||
<input type="hidden" name="exec" value="1" />
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<fieldset class="cbi-section-node">
|
||||
<div class="cbi-section">
|
||||
<div class="cbi-section-node">
|
||||
<% if (install and next(install)) or (remove and next(remove)) or update or upgrade then %>
|
||||
<div class="cbi-value">
|
||||
<% if #stdout > 0 then %><pre><%=pcdata(stdout)%></pre><% end %>
|
||||
|
@ -91,18 +93,18 @@ end
|
|||
<div style="background-color:#F08080; border-right:1px solid #000000; height:100%; width:<%=used_perc%>%"> </div>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<fieldset class="cbi-section-node">
|
||||
<div class="cbi-section-node">
|
||||
<input type="hidden" name="display" value="<%=pcdata(display)%>" />
|
||||
|
||||
<div class="cbi-value">
|
||||
<label class="cbi-value-title"><%:Download and install package%>:</label>
|
||||
<div class="cbi-value-field">
|
||||
<input type="text" name="url" size="30" value="" />
|
||||
<input class="cbi-button cbi-input-save" type="submit" name="go" value="<%:OK%>" />
|
||||
<input class="cbi-button cbi-button-save" type="submit" name="go" value="<%:OK%>" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -110,11 +112,11 @@ end
|
|||
<label class="cbi-value-title"><%:Filter%>:</label>
|
||||
<div class="cbi-value-field">
|
||||
<input type="text" name="query" size="20" value="<%=pcdata(query)%>" />
|
||||
<input type="submit" class="cbi-button cbi-input-find" name="search" value="<%:Find package%>" />
|
||||
<input type="submit" class="cbi-button cbi-button-action" name="search" value="<%:Find package%>" />
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
|
||||
|
@ -122,90 +124,90 @@ end
|
|||
|
||||
|
||||
<ul class="cbi-tabmenu">
|
||||
<li class="cbi-tab<% if display ~= "installed" then %>-disabled<% end %>"><a href="?display=installed&query=<%=pcdata(query)%>"><%:Installed packages%><% if query then %> (<%=pcdata(query)%>)<% end %></a></li>
|
||||
<li class="cbi-tab<% if display ~= "available" then %>-disabled<% end %>"><a href="?display=available&query=<%=pcdata(query)%>"><%:Available packages%><% if query then %> (<%=pcdata(query)%>)<% end %></a></li>
|
||||
<li class="cbi-tab<% if display ~= "installed" then %>-disabled<% end %>"><a href="?display=installed&query=<%=pcdata(query)%>"><%:Installed packages%><% if query then %> (<%=pcdata(query)%>)<% end %></a></li>
|
||||
</ul>
|
||||
|
||||
<% if display ~= "available" then %>
|
||||
<fieldset class="cbi-section">
|
||||
<div class="table cbi-section-table" style="width:100%">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th cbi-section-table-cell" style="text-align:left"> </div>
|
||||
<div class="th cbi-section-table-cell" style="text-align:left"><%:Package name%></div>
|
||||
<div class="th cbi-section-table-cell" style="text-align:left"><%:Version%></div>
|
||||
</div>
|
||||
<% local empty = true; luci.model.ipkg.list_installed(querypat, function(n, v, s, d) empty = false; filter[n] = true %>
|
||||
<div class="tr cbi-section-table-row cbi-rowstyle-<%=rowstyle()%>">
|
||||
<div class="td" style="text-align:left; width:10%">
|
||||
<form method="post" class="inline" action="<%=REQUEST_URI%>">
|
||||
<input type="hidden" name="exec" value="1" />
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<input type="hidden" name="remove" value="<%=pcdata(n)%>" />
|
||||
<a onclick="window.confirm('<%:Remove%> "<%=luci.util.pcdata(n)%>" ?') && this.parentNode.submit(); return false" href="#"><%:Remove%></a>
|
||||
</form>
|
||||
<div class="cbi-section">
|
||||
<div class="cbi-section-node">
|
||||
<div class="table">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th left"><%:Package name%></div>
|
||||
<div class="th left"><%:Version%></div>
|
||||
<div class="th cbi-section-actions"> </div>
|
||||
</div>
|
||||
<div class="td" style="text-align:left"><%=luci.util.pcdata(n)%></div>
|
||||
<div class="td" style="text-align:left"><%=luci.util.pcdata(v)%></div>
|
||||
<% local empty = true; luci.model.ipkg.list_installed(querypat, function(n, v, s, d) empty = false; filter[n] = true %>
|
||||
<div class="tr cbi-rowstyle-<%=rowstyle()%>">
|
||||
<div class="td left"><%=luci.util.pcdata(n)%></div>
|
||||
<div class="td left"><%=luci.util.pcdata(v)%></div>
|
||||
<div class="td cbi-section-actions">
|
||||
<form method="post" class="inline" action="<%=REQUEST_URI%>">
|
||||
<input type="hidden" name="exec" value="1" />
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<input type="hidden" name="remove" value="<%=pcdata(n)%>" />
|
||||
<input class="cbi-button cbi-button-remove" type="submit" onclick="window.confirm('<%:Remove%> "<%=luci.util.pcdata(n)%>" ?') && this.parentNode.submit(); return false" value="<%:Remove%>" />
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<% end) %>
|
||||
<% if empty then %>
|
||||
<div class="tr cbi-section-table-row">
|
||||
<div class="td left"> </div>
|
||||
<div class="td left"><em><%:none%></em></div>
|
||||
<div class="td left"><em><%:none%></em></div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<% end) %>
|
||||
<% if empty then %>
|
||||
<div class="tr cbi-section-table-row">
|
||||
<div class="td" style="text-align:left"> </div>
|
||||
<div class="td" style="text-align:left"><em><%:none%></em></div>
|
||||
<div class="td" style="text-align:left"><em><%:none%></em></div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
<% else %>
|
||||
<fieldset class="cbi-section">
|
||||
<div class="cbi-section">
|
||||
<% if not querypat then %>
|
||||
<ul class="cbi-tabmenu">
|
||||
<ul class="cbi-tabmenu" style="flex-wrap:wrap">
|
||||
<% local i; for i = 65, 90 do %>
|
||||
<li class="cbi-tab<% if letter ~= i then %>-disabled<% end %>"><a href="?display=available&letter=<%=string.char(i)%>"><%=string.char(i)%></a></li>
|
||||
<% end %>
|
||||
<li class="cbi-tab<% if letter ~= 35 then %>-disabled<% end %>"><a href="?display=available&letter=%23">#</a></li>
|
||||
</ul>
|
||||
<div class="cbi-section-node">
|
||||
<% end %>
|
||||
<div class="table cbi-section-table" style="width:100%">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th cbi-section-table-cell" style="text-align:left"> </div>
|
||||
<div class="th cbi-section-table-cell" style="text-align:left"><%:Package name%></div>
|
||||
<div class="th cbi-section-table-cell" style="text-align:left"><%:Version%></div>
|
||||
<div class="th cbi-section-table-cell" style="text-align:right"><%:Size (.ipk)%></div>
|
||||
<div class="th cbi-section-table-cell" style="text-align:left"><%:Description%></div>
|
||||
</div>
|
||||
<% local empty = true; opkg_list(querypat or letterpat, function(n, v, s, d) if filter[n] then return end; empty = false %>
|
||||
<div class="tr cbi-section-table-row cbi-rowstyle-<%=rowstyle()%>">
|
||||
<div class="td" style="text-align:left; width:10%">
|
||||
<form method="post" class="inline" action="<%=REQUEST_URI%>">
|
||||
<input type="hidden" name="exec" value="1" />
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<input type="hidden" name="install" value="<%=pcdata(n)%>" />
|
||||
<a onclick="window.confirm('<%:Install%> "<%=luci.util.pcdata(n)%>" ?') && this.parentNode.submit(); return false" href="#"><%:Install%></a>
|
||||
</form>
|
||||
<div class="cbi-section-node cbi-section-node-tabbed">
|
||||
<div class="table">
|
||||
<div class="tr cbi-section-table-titles">
|
||||
<div class="th col-2 left"><%:Package name%></div>
|
||||
<div class="th col-2 left"><%:Version%></div>
|
||||
<div class="th col-1 center"><%:Size (.ipk)%></div>
|
||||
<div class="th col-10 left"><%:Description%></div>
|
||||
<div class="th cbi-section-actions"> </div>
|
||||
</div>
|
||||
<div class="td" style="text-align:left"><%=luci.util.pcdata(n)%></div>
|
||||
<div class="td" style="text-align:left"><%=luci.util.pcdata(v)%></div>
|
||||
<div class="td" style="text-align:right"><%=luci.util.pcdata(s)%></div>
|
||||
<div class="td" style="text-align:left"><%=luci.util.pcdata(d)%></div>
|
||||
<% local empty = true; opkg_list(querypat or letterpat, function(n, v, s, d) if filter[n] then return end; empty = false %>
|
||||
<div class="tr cbi-rowstyle-<%=rowstyle()%>">
|
||||
<div class="td col-2 left"><%=luci.util.pcdata(n)%></div>
|
||||
<div class="td col-2 left"><%=luci.util.pcdata(v)%></div>
|
||||
<div class="td col-1 center"><%=luci.util.pcdata(s)%></div>
|
||||
<div class="td col-10 left"><%=luci.util.pcdata(d)%></div>
|
||||
<div class="td cbi-section-actions">
|
||||
<form method="post" class="inline" action="<%=REQUEST_URI%>">
|
||||
<input type="hidden" name="exec" value="1" />
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<input type="hidden" name="install" value="<%=pcdata(n)%>" />
|
||||
<input class="cbi-button cbi-button-apply" type="submit" onclick="window.confirm('<%:Install%> "<%=luci.util.pcdata(n)%>" ?') && this.parentNode.submit(); return false" value="<%:Install%>" />
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<% end) %>
|
||||
<% if empty then %>
|
||||
<div class="tr">
|
||||
<div class="td left"> </div>
|
||||
<div class="td left"><em><%:none%></em></div>
|
||||
<div class="td left"><em><%:none%></em></div>
|
||||
<div class="td right"><em><%:none%></em></div>
|
||||
<div class="td left"><em><%:none%></em></div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<% end) %>
|
||||
<% if empty then %>
|
||||
<div class="tr cbi-section-table-row">
|
||||
<div class="td" style="text-align:left"> </div>
|
||||
<div class="td" style="text-align:left"><em><%:none%></em></div>
|
||||
<div class="td" style="text-align:left"><em><%:none%></em></div>
|
||||
<div class="td" style="text-align:right"><em><%:none%></em></div>
|
||||
<div class="td" style="text-align:left"><em><%:none%></em></div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<% if not querypat then %>
|
||||
</div>
|
||||
<% end %>
|
||||
</fieldset>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
<%+header%>
|
||||
|
||||
<h2 name="content"><%:Reboot%></h2>
|
||||
<br />
|
||||
|
||||
<p><%:Reboots the operating system of your device%></p>
|
||||
|
||||
|
@ -49,7 +48,7 @@
|
|||
}
|
||||
//]]></script>
|
||||
|
||||
<input class="cbi-button cbi-button-apply" type="button" value="<%:Perform reboot%>" onclick="reboot(this)" />
|
||||
<input class="cbi-button cbi-button-action important" type="button" value="<%:Perform reboot%>" onclick="reboot(this)" />
|
||||
|
||||
<p class="alert-message" style="display:none">
|
||||
<img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="vertical-align:middle" />
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
-%>
|
||||
|
||||
<% export("uci_changelog", function(changes) -%>
|
||||
<fieldset class="cbi-section">
|
||||
<div class="cbi-section">
|
||||
<strong><%:Legend:%></strong>
|
||||
<div class="uci-change-legend">
|
||||
<div class="uci-change-legend-label"><ins> </ins> <%:Section added%></div>
|
||||
|
@ -32,9 +32,11 @@
|
|||
ret[#ret+1] = "<br />%s.%s.%s+=<strong>%s</strong>"
|
||||
%{ r, s, o, util.pcdata(v[i]) }
|
||||
end
|
||||
else
|
||||
elseif v ~= "" then
|
||||
ret[#ret+1] = "<br />%s.%s.%s=<strong>%s</strong>"
|
||||
%{ r, s, o, util.pcdata(v) }
|
||||
else
|
||||
ret[#ret+1] = "<br /><del>%s.%s.<strong>%s</strong></del>" %{ r, s, o }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -57,7 +59,7 @@
|
|||
ret[#ret+1] = "%s.%s.%s+=<strong>%s</strong><br />"
|
||||
%{ r, s, o, util.pcdata(v[i]) }
|
||||
end
|
||||
|
||||
|
||||
else
|
||||
ret[#ret+1] = "%s.%s.%s=<strong>%s</strong><br />"
|
||||
%{ r, s, o, util.pcdata(v) }
|
||||
|
@ -75,5 +77,5 @@
|
|||
|
||||
write(table.concat(ret))
|
||||
%></div>
|
||||
</fieldset>
|
||||
</div>
|
||||
<%- end) %>
|
||||
|
|
|
@ -27,21 +27,17 @@
|
|||
|
||||
<div class="cbi-page-actions">
|
||||
<% if redir_url then %>
|
||||
<div style="float:left">
|
||||
<form class="inline" method="get" action="<%=luci.util.pcdata(redir_url)%>">
|
||||
<input class="cbi-button cbi-button-link" style="float:left; margin:0" type="submit" value="<%:Back%>" />
|
||||
</form>
|
||||
</div>
|
||||
<form method="get" action="<%=luci.util.pcdata(redir_url)%>">
|
||||
<input class="cbi-button cbi-button-link" type="submit" value="<%:Back%>" />
|
||||
</form>
|
||||
<% end %>
|
||||
|
||||
<div style="text-align:right">
|
||||
<input class="cbi-button cbi-button-save" type="button" id="apply_button" value="<%:Save & Apply%>" onclick="uci_apply(true); this.blur()" />
|
||||
<form class="inline" method="post" action="<%=url("admin/uci/revert")%>">
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<input type="hidden" name="redir" value="<%=pcdata(luci.http.formvalue("redir"))%>" />
|
||||
<input class="cbi-button cbi-button-reset" type="submit" value="<%:Revert%>" />
|
||||
</form>
|
||||
</div>
|
||||
<input class="cbi-button cbi-button-save" type="button" id="apply_button" value="<%:Save & Apply%>" onclick="uci_apply(true); this.blur()" />
|
||||
<form method="post" action="<%=url("admin/uci/revert")%>">
|
||||
<input type="hidden" name="token" value="<%=token%>" />
|
||||
<input type="hidden" name="redir" value="<%=pcdata(luci.http.formvalue("redir"))%>" />
|
||||
<input class="cbi-button cbi-button-reset" type="submit" value="<%:Revert%>" />
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<%+footer%>
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
<div class="alert-message" id="cbi_apply_status" style="display:none"></div>
|
||||
<script type="text/javascript">
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
uci_apply(true);
|
||||
uci_revert();
|
||||
});
|
||||
</script>
|
||||
|
||||
|
|
|
@ -215,7 +215,8 @@ a:hover {
|
|||
* ---------------------------------------------------------------------------------------- */
|
||||
p,
|
||||
.cbi-map-descr,
|
||||
.cbi-section-descr {
|
||||
.cbi-section-descr,
|
||||
.table .tr.cbi-section-table-descr .th {
|
||||
font-size: 13px;
|
||||
font-weight: normal;
|
||||
line-height: 18px;
|
||||
|
@ -229,7 +230,7 @@ p small {
|
|||
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h3, legend,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
|
@ -265,14 +266,14 @@ h2 small {
|
|||
font-size: 14px;
|
||||
}
|
||||
|
||||
h3,
|
||||
h3, legend,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
line-height: 36px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
h3, legend {
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
|
@ -543,6 +544,13 @@ textarea {
|
|||
height: auto;
|
||||
}
|
||||
|
||||
.td > input[type=text],
|
||||
.td > input[type=password],
|
||||
.td > select,
|
||||
.td > .cbi-dropdown {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.uneditable-input {
|
||||
background-color: #ffffff;
|
||||
display: block;
|
||||
|
@ -645,6 +653,26 @@ textarea[readonly] {
|
|||
border-color: #ddd;
|
||||
}
|
||||
|
||||
.cbi-optionals,
|
||||
.cbi-section-create {
|
||||
padding: 0 0 10px 10px;
|
||||
}
|
||||
|
||||
.cbi-section-create {
|
||||
margin: -3px;
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.cbi-section-create > * {
|
||||
margin: 3px;
|
||||
flex: 1 1 auto;
|
||||
}
|
||||
|
||||
.cbi-section-create > * > input {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.actions,
|
||||
.cbi-page-actions {
|
||||
background: #f5f5f5;
|
||||
|
@ -706,6 +734,7 @@ textarea[readonly] {
|
|||
padding: 0;
|
||||
font-size: 13px;
|
||||
border-collapse: collapse;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.table .th, .table .td {
|
||||
|
@ -765,6 +794,19 @@ table tbody th {
|
|||
vertical-align: top;
|
||||
}
|
||||
|
||||
.tr.placeholder {
|
||||
height: calc(3em + 20px);
|
||||
}
|
||||
|
||||
.tr.placeholder > .td {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
text-align: center;
|
||||
line-height: 3em;
|
||||
}
|
||||
|
||||
/* Patterns.less
|
||||
* Repeatable UI elements outside the base styles provided from the scaffolding
|
||||
* ---------------------------------------------------------------------------- */
|
||||
|
@ -1277,99 +1319,67 @@ footer {
|
|||
outline: 1px dotted #666;
|
||||
}
|
||||
|
||||
.btn.primary,
|
||||
.cbi-page-actions .cbi-button-apply,
|
||||
.cbi-page-actions .cbi-button-save,
|
||||
.cbi-page-actions .cbi-button-reset {
|
||||
color: #ffffff;
|
||||
padding: 5px 14px 6px;
|
||||
background-color: #0064cd;
|
||||
background-repeat: repeat-x;
|
||||
background-image: linear-gradient(to bottom, #049cdb, #0064cd);
|
||||
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
|
||||
border-color: #0064cd #0064cd #003f81;
|
||||
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
|
||||
}
|
||||
|
||||
.cbi-input-invalid,
|
||||
.cbi-value-error input {
|
||||
color: #FF0000;
|
||||
border-color: #FF0000;
|
||||
}
|
||||
|
||||
.cbi-button-up,
|
||||
.cbi-input-up {
|
||||
background-position: center center;
|
||||
background-image: url('../resources/cbi/up.gif'), linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
|
||||
}
|
||||
|
||||
.cbi-button-down,
|
||||
.cbi-input-down {
|
||||
background-position: center center;
|
||||
background-image: url('../resources/cbi/down.gif'), linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
|
||||
}
|
||||
|
||||
.cbi-button-find,
|
||||
.cbi-input-find {
|
||||
background-position: 6px center, left top;
|
||||
padding-left: 28px;
|
||||
background-image: url('../resources/cbi/find.gif'), linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
|
||||
}
|
||||
|
||||
.cbi-button-positive,
|
||||
.cbi-button-fieldadd,
|
||||
.cbi-button-add,
|
||||
.cbi-input-add {
|
||||
background-position: 6px center, left top;
|
||||
padding-left: 28px;
|
||||
background-image: url('../resources/cbi/add.gif'), linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
|
||||
}
|
||||
|
||||
.cbi-button-apply,
|
||||
.cbi-input-apply {
|
||||
background-position: 6px center, left top;
|
||||
padding-left: 28px;
|
||||
background-image: url('../resources/cbi/apply.gif'), linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
|
||||
}
|
||||
|
||||
.cbi-button-reset,
|
||||
.cbi-input-reset {
|
||||
background-position: 6px center, left top;
|
||||
padding-left: 28px;
|
||||
background-image: url('../resources/cbi/reset.gif'), linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
|
||||
}
|
||||
|
||||
.cbi-button-edit,
|
||||
.cbi-input-edit {
|
||||
background-position: 6px center, left top;
|
||||
padding-left: 28px;
|
||||
background-image: url('../resources/cbi/edit.gif'), linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
|
||||
}
|
||||
|
||||
.cbi-button-remove,
|
||||
.cbi-input-remove {
|
||||
background-position: 6px center, left top;
|
||||
padding-left: 28px;
|
||||
background-image: url('../resources/cbi/remove.gif'), linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
|
||||
}
|
||||
|
||||
.cbi-button-reload,
|
||||
.cbi-input-reload {
|
||||
background-position: 6px center, left top;
|
||||
padding-left: 28px;
|
||||
background-image: url('../resources/cbi/reload.gif'), linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
|
||||
}
|
||||
|
||||
.cbi-button-link,
|
||||
.cbi-input-link {
|
||||
background-position: 6px center, left top;
|
||||
padding-left: 28px;
|
||||
background-image: url('../resources/cbi/link.gif'), linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
|
||||
.cbi-button-save {
|
||||
border-color: #4a4;
|
||||
color: #4a4;
|
||||
}
|
||||
|
||||
.cbi-button-neutral,
|
||||
.cbi-button-download,
|
||||
.cbi-input-download {
|
||||
background-position: 6px center, left top;
|
||||
padding-left: 28px;
|
||||
background-image: url('../resources/cbi/download.gif'), linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
|
||||
.cbi-button-find,
|
||||
.cbi-button-link,
|
||||
.cbi-button-up,
|
||||
.cbi-button-down {
|
||||
border-color: #444;
|
||||
color: #444;
|
||||
}
|
||||
|
||||
.btn.primary,
|
||||
.cbi-button-action,
|
||||
.cbi-button-apply,
|
||||
.cbi-button-reload,
|
||||
.cbi-button-edit {
|
||||
border-color: #0069d6;
|
||||
color: #0069d6;
|
||||
}
|
||||
|
||||
.cbi-button-negative,
|
||||
.cbi-section-remove .cbi-button,
|
||||
.cbi-button-reset,
|
||||
.cbi-button-remove {
|
||||
border-color: #c44;
|
||||
color: #c44;
|
||||
}
|
||||
|
||||
.btn.primary,
|
||||
.cbi-button-action.important,
|
||||
.cbi-page-actions .cbi-button-apply,
|
||||
.cbi-section-actions .cbi-button-edit {
|
||||
color: #fff;
|
||||
background: #0069d6;
|
||||
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
|
||||
}
|
||||
|
||||
.cbi-button-positive.important,
|
||||
.cbi-page-actions .cbi-button-save {
|
||||
color: #fff;
|
||||
background: #4a4;
|
||||
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
|
||||
}
|
||||
|
||||
.cbi-page-actions .cbi-button-apply + .cbi-button-save {
|
||||
background: linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
|
||||
text-shadow: 0 -1px 0 rgba(255, 255, 255, 0.75);
|
||||
color: #4a4;
|
||||
}
|
||||
|
||||
.cbi-dropdown {
|
||||
|
@ -1525,6 +1535,58 @@ footer {
|
|||
opacity: .6;
|
||||
}
|
||||
|
||||
.cbi-tooltip-container {
|
||||
cursor: help;
|
||||
}
|
||||
|
||||
.cbi-tooltip {
|
||||
position: absolute;
|
||||
z-index: 1000;
|
||||
left: -1000px;
|
||||
opacity: 0;
|
||||
transition: opacity .25s ease-out;
|
||||
}
|
||||
|
||||
.cbi-tooltip-container:hover .cbi-tooltip:not(:empty) {
|
||||
left: auto;
|
||||
opacity: 1;
|
||||
transition: opacity .25s ease-in;
|
||||
}
|
||||
|
||||
.zonebadge .cbi-tooltip {
|
||||
padding: 1px;
|
||||
background: inherit;
|
||||
margin: -1.6em 0 0 -5px;
|
||||
border-radius: 3px;
|
||||
pointer-events: none;
|
||||
box-shadow: 0 0 3px #444;
|
||||
}
|
||||
|
||||
.zonebadge .cbi-tooltip > * {
|
||||
margin: 1px;
|
||||
}
|
||||
|
||||
.zone-forwards {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.zone-forwards > * {
|
||||
flex: 1 1 40%;
|
||||
padding: 1px;
|
||||
}
|
||||
|
||||
.zone-forwards > span {
|
||||
flex-basis: 10%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.zone-forwards .zone-src,
|
||||
.zone-forwards .zone-dest {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.btn.active, .btn:active {
|
||||
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
|
@ -1555,46 +1617,6 @@ footer {
|
|||
font-size: 11px;
|
||||
}
|
||||
|
||||
/* Button icons for specific pages */
|
||||
.Startup .cbi-section-table input.cbi-input-apply,
|
||||
.Startup .cbi-section-table input.cbi-button-apply {
|
||||
background-image: url("../resources/cbi/apply.gif");
|
||||
background-position: 7px 4px;
|
||||
padding: 3px 9px 3px 27px;
|
||||
}
|
||||
|
||||
.Processes .cbi-section-table input.cbi-input-reload,
|
||||
.Startup .cbi-section-table input.cbi-input-reload {
|
||||
background-image: url("../resources/cbi/reload.gif");
|
||||
background-position: 7px 4px;
|
||||
padding: 3px 9px 3px 27px;
|
||||
}
|
||||
|
||||
.Processes .cbi-section-table input.cbi-input-remove,
|
||||
.Processes .cbi-section-table div.cbi-section-remove input,
|
||||
.Startup .cbi-section-table input.cbi-input-remove,
|
||||
.Startup .cbi-section-table div.cbi-section-remove input {
|
||||
background-image: url("../resources/cbi/remove.gif");
|
||||
background-position: 7px 4px;
|
||||
padding: 3px 9px 3px 27px;
|
||||
}
|
||||
|
||||
.Processes .cbi-section-table input.cbi-input-reset,
|
||||
.Processes .cbi-section-table input.cbi-button-reset,
|
||||
.Startup .cbi-section-table input.cbi-input-reset,
|
||||
.Startup .cbi-section-table input.cbi-button-reset {
|
||||
background-image: url("../resources/cbi/reset.gif");
|
||||
background-position: 7px 4px;
|
||||
padding: 3px 9px 3px 27px;
|
||||
}
|
||||
|
||||
.Startup .cbi-section-table input.cbi-input-save,
|
||||
.Startup .cbi-section-table input.cbi-button-save {
|
||||
background-image: url("../resources/cbi/save.gif");
|
||||
background-position: 7px 4px;
|
||||
padding: 3px 9px 3px 27px;
|
||||
}
|
||||
|
||||
button.btn::-moz-focus-inner, input[type=submit].btn::-moz-focus-inner {
|
||||
padding: 0;
|
||||
border: 0;
|
||||
|
@ -1746,6 +1768,20 @@ header .pull-right { padding-top: 8px; }
|
|||
font-weight: normal;
|
||||
}
|
||||
|
||||
.cbi-section-table-titles.named::before,
|
||||
.cbi-section-table-descr.named::before,
|
||||
.cbi-section-table-row[data-title]::before {
|
||||
content: attr(data-title) " ";
|
||||
display: table-cell;
|
||||
padding: 10px 10px 9px;
|
||||
line-height: 18px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.cbi-section-table-row[data-title]::before {
|
||||
border-top: 1px solid #ddd;
|
||||
}
|
||||
|
||||
.left { text-align: left !important; }
|
||||
|
||||
.right { text-align: right !important; }
|
||||
|
@ -1784,9 +1820,13 @@ table table td,
|
|||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.cbi-value-description { display: inline; }
|
||||
|
||||
.cbi-value-description img { vertical-align: middle; }
|
||||
.cbi-value-description {
|
||||
background-image: url(/luci-static/resources/cbi/help.gif);
|
||||
background-position: .25em .2em;
|
||||
background-repeat: no-repeat;
|
||||
margin: .25em 0 0 0;
|
||||
padding: 0 0 0 1.7em;
|
||||
}
|
||||
|
||||
.cbi-section-error {
|
||||
border: 1px solid #FF0000;
|
||||
|
@ -1885,6 +1925,7 @@ table table td,
|
|||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.ifacebadge.large,
|
||||
.network-status-table .ifacebox-body .ifacebadge {
|
||||
flex: 1;
|
||||
margin: .5em .25em 0 .25em;
|
||||
|
@ -1899,7 +1940,6 @@ table table td,
|
|||
white-space: nowrap;
|
||||
color: #666666;
|
||||
text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.zonebadge > em,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue