summaryrefslogtreecommitdiffhomepage
path: root/applications
diff options
context:
space:
mode:
Diffstat (limited to 'applications')
-rw-r--r--applications/luci-app-ahcp/luasrc/view/ahcp_status.htm2
-rw-r--r--applications/luci-app-asterisk/Makefile1
-rw-r--r--applications/luci-app-asterisk/luasrc/view/asterisk/dialplans.htm24
-rw-r--r--applications/luci-app-asterisk/luasrc/view/asterisk/dialzones.htm10
-rw-r--r--applications/luci-app-commands/luasrc/view/commands.htm6
-rw-r--r--applications/luci-app-ddns/luasrc/controller/ddns.lua97
-rw-r--r--applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua645
-rw-r--r--applications/luci-app-ddns/luasrc/model/cbi/ddns/global.lua66
-rw-r--r--applications/luci-app-ddns/luasrc/model/cbi/ddns/hints.lua19
-rw-r--r--applications/luci-app-ddns/luasrc/model/cbi/ddns/overview.lua44
-rw-r--r--applications/luci-app-ddns/luasrc/tools/ddns.lua137
-rw-r--r--applications/luci-app-ddns/luasrc/view/ddns/detail_logview.htm2
-rw-r--r--applications/luci-app-ddns/luasrc/view/ddns/overview_status.htm14
-rw-r--r--applications/luci-app-ddns/luasrc/view/ddns/system_status.htm16
-rw-r--r--applications/luci-app-ddns/po/ca/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/cs/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/de/ddns.po62
-rw-r--r--applications/luci-app-ddns/po/el/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/en/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/es/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/fr/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/he/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/hu/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/it/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/ja/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/ms/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/no/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/pl/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/pt-br/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/pt/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/ro/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/ru/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/sk/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/sv/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/templates/ddns.pot44
-rw-r--r--applications/luci-app-ddns/po/tr/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/uk/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/vi/ddns.po3
-rw-r--r--applications/luci-app-ddns/po/zh-cn/ddns.po135
-rw-r--r--applications/luci-app-ddns/po/zh-tw/ddns.po3
-rw-r--r--applications/luci-app-diag-core/luasrc/view/diag/index.htm2
-rw-r--r--applications/luci-app-diag-core/luasrc/view/diag/network_config_index.htm2
-rw-r--r--applications/luci-app-diag-devinfo/Makefile2
-rw-r--r--applications/luci-app-dump1090/luasrc/model/cbi/dump1090.lua72
-rw-r--r--applications/luci-app-firewall/luasrc/model/cbi/firewall/zone-details.lua11
-rw-r--r--applications/luci-app-firewall/po/pl/firewall.po8
-rw-r--r--applications/luci-app-freifunk-diagnostics/luasrc/view/freifunk/diagnostics.htm4
-rw-r--r--applications/luci-app-freifunk-widgets/luasrc/view/freifunk/widgets/search/main.htm2
-rw-r--r--applications/luci-app-ltqtapi/luasrc/view/telephony_status.htm2
-rw-r--r--applications/luci-app-minidlna/luasrc/view/minidlna_status.htm2
-rw-r--r--applications/luci-app-mjpg-streamer/po/templates/mjpg-streamer.pot18
-rw-r--r--applications/luci-app-mjpg-streamer/po/zh-cn/mjpg-streamer.po37
-rw-r--r--applications/luci-app-multiwan/luasrc/view/multiwan_status.htm2
-rw-r--r--applications/luci-app-multiwan/po/es/multiwan.po2
-rw-r--r--applications/luci-app-ocserv/luasrc/controller/ocserv.lua2
-rw-r--r--applications/luci-app-ocserv/luasrc/model/cbi/ocserv/main.lua50
-rw-r--r--applications/luci-app-ocserv/luasrc/view/ocserv_status.htm4
-rw-r--r--applications/luci-app-olsr-services/luasrc/view/freifunk-services/services.htm2
-rw-r--r--applications/luci-app-olsr/luasrc/view/status-olsr/error_olsr.htm2
-rw-r--r--applications/luci-app-olsr/luasrc/view/status-olsr/hna.htm2
-rw-r--r--applications/luci-app-olsr/luasrc/view/status-olsr/interfaces.htm2
-rw-r--r--applications/luci-app-olsr/luasrc/view/status-olsr/mid.htm2
-rw-r--r--applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm2
-rw-r--r--applications/luci-app-olsr/luasrc/view/status-olsr/overview.htm2
-rw-r--r--applications/luci-app-olsr/luasrc/view/status-olsr/routes.htm2
-rw-r--r--applications/luci-app-olsr/luasrc/view/status-olsr/smartgw.htm2
-rw-r--r--applications/luci-app-olsr/luasrc/view/status-olsr/topology.htm2
-rw-r--r--applications/luci-app-openvpn/luasrc/model/cbi/openvpn-advanced.lua1
-rw-r--r--applications/luci-app-openvpn/luasrc/model/cbi/openvpn-basic.lua2
-rw-r--r--applications/luci-app-openvpn/luasrc/view/openvpn/pageswitch.htm6
-rw-r--r--applications/luci-app-polipo/luasrc/view/polipo_status.htm2
-rw-r--r--applications/luci-app-privoxy/Makefile4
-rw-r--r--applications/luci-app-privoxy/luasrc/controller/privoxy.lua2
-rw-r--r--applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua3
-rw-r--r--applications/luci-app-privoxy/luasrc/view/privoxy/detail_logview.htm2
-rw-r--r--applications/luci-app-privoxy/luasrc/view/privoxy/detail_startstop.htm4
-rw-r--r--applications/luci-app-qos/luasrc/model/cbi/qos/qos.lua10
-rw-r--r--applications/luci-app-qos/po/ca/qos.po6
-rw-r--r--applications/luci-app-qos/po/cs/qos.po6
-rw-r--r--applications/luci-app-qos/po/de/qos.po6
-rw-r--r--applications/luci-app-qos/po/el/qos.po6
-rw-r--r--applications/luci-app-qos/po/en/qos.po6
-rw-r--r--applications/luci-app-qos/po/es/qos.po6
-rw-r--r--applications/luci-app-qos/po/fr/qos.po6
-rw-r--r--applications/luci-app-qos/po/he/qos.po3
-rw-r--r--applications/luci-app-qos/po/hu/qos.po6
-rw-r--r--applications/luci-app-qos/po/it/qos.po6
-rw-r--r--applications/luci-app-qos/po/ja/qos.po6
-rw-r--r--applications/luci-app-qos/po/ms/qos.po3
-rw-r--r--applications/luci-app-qos/po/no/qos.po6
-rw-r--r--applications/luci-app-qos/po/pl/qos.po6
-rw-r--r--applications/luci-app-qos/po/pt-br/qos.po6
-rw-r--r--applications/luci-app-qos/po/pt/qos.po6
-rw-r--r--applications/luci-app-qos/po/ro/qos.po6
-rw-r--r--applications/luci-app-qos/po/ru/qos.po6
-rw-r--r--applications/luci-app-qos/po/sk/qos.po3
-rw-r--r--applications/luci-app-qos/po/sv/qos.po3
-rw-r--r--applications/luci-app-qos/po/templates/qos.pot3
-rw-r--r--applications/luci-app-qos/po/tr/qos.po3
-rw-r--r--applications/luci-app-qos/po/uk/qos.po6
-rw-r--r--applications/luci-app-qos/po/vi/qos.po3
-rw-r--r--applications/luci-app-qos/po/zh-cn/qos.po6
-rw-r--r--applications/luci-app-qos/po/zh-tw/qos.po6
-rw-r--r--applications/luci-app-radicale/Makefile2
-rw-r--r--applications/luci-app-radicale/luasrc/controller/radicale.lua8
-rw-r--r--applications/luci-app-radicale/luasrc/view/radicale/btn_startstop.htm4
-rw-r--r--applications/luci-app-shadowsocks-libev/po/templates/shadowsocks-libev.pot54
-rw-r--r--applications/luci-app-shadowsocks-libev/po/zh-cn/shadowsocks-libev.po98
-rw-r--r--applications/luci-app-splash/luasrc/controller/splash/splash.lua2
-rw-r--r--applications/luci-app-splash/luasrc/view/admin_status/splash.htm4
-rw-r--r--applications/luci-app-splash/luasrc/view/splash/blocked.htm2
-rw-r--r--applications/luci-app-splash/luasrc/view/splash/splash.htm2
-rw-r--r--applications/luci-app-statistics/luasrc/controller/luci_statistics/luci_statistics.lua14
-rw-r--r--applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/network.lua2
-rw-r--r--applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/openvpn.lua56
-rw-r--r--applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/sensors.lua125
-rw-r--r--applications/luci-app-statistics/luasrc/statistics/i18n.lua30
-rw-r--r--applications/luci-app-statistics/luasrc/statistics/rrdtool.lua7
-rw-r--r--applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/interface.lua12
-rw-r--r--applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/iwinfo.lua2
-rw-r--r--applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/netlink.lua40
-rw-r--r--applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/nut.lua6
-rw-r--r--applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/openvpn.lua48
-rw-r--r--applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/ping.lua27
-rw-r--r--applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/sensors.lua24
-rw-r--r--applications/luci-app-statistics/luasrc/view/admin_statistics/index.htm2
-rw-r--r--applications/luci-app-statistics/luasrc/view/public_statistics/graph.htm2
-rw-r--r--applications/luci-app-statistics/po/ca/statistics.po99
-rw-r--r--applications/luci-app-statistics/po/cs/statistics.po97
-rw-r--r--applications/luci-app-statistics/po/de/statistics.po97
-rw-r--r--applications/luci-app-statistics/po/el/statistics.po98
-rw-r--r--applications/luci-app-statistics/po/en/statistics.po99
-rw-r--r--applications/luci-app-statistics/po/es/statistics.po97
-rw-r--r--applications/luci-app-statistics/po/fr/statistics.po99
-rw-r--r--applications/luci-app-statistics/po/he/statistics.po79
-rw-r--r--applications/luci-app-statistics/po/hu/statistics.po99
-rw-r--r--applications/luci-app-statistics/po/it/statistics.po79
-rw-r--r--applications/luci-app-statistics/po/ja/statistics.po85
-rw-r--r--applications/luci-app-statistics/po/ms/statistics.po79
-rw-r--r--applications/luci-app-statistics/po/no/statistics.po97
-rw-r--r--applications/luci-app-statistics/po/pl/statistics.po97
-rw-r--r--applications/luci-app-statistics/po/pt-br/statistics.po98
-rw-r--r--applications/luci-app-statistics/po/pt/statistics.po98
-rw-r--r--applications/luci-app-statistics/po/ro/statistics.po85
-rw-r--r--applications/luci-app-statistics/po/ru/statistics.po97
-rw-r--r--applications/luci-app-statistics/po/sk/statistics.po79
-rw-r--r--applications/luci-app-statistics/po/sv/statistics.po79
-rw-r--r--applications/luci-app-statistics/po/templates/statistics.pot79
-rw-r--r--applications/luci-app-statistics/po/tr/statistics.po79
-rw-r--r--applications/luci-app-statistics/po/uk/statistics.po79
-rw-r--r--applications/luci-app-statistics/po/vi/statistics.po97
-rw-r--r--applications/luci-app-statistics/po/zh-cn/statistics.po97
-rw-r--r--applications/luci-app-statistics/po/zh-tw/statistics.po79
-rw-r--r--applications/luci-app-statistics/root/etc/config/luci_statistics3
-rwxr-xr-xapplications/luci-app-statistics/root/usr/bin/stat-genconfig16
-rw-r--r--applications/luci-app-tinyproxy/luasrc/view/tinyproxy_status.htm2
-rw-r--r--applications/luci-app-upnp/luasrc/controller/upnp.lua4
-rw-r--r--applications/luci-app-upnp/luasrc/view/upnp_status.htm4
-rw-r--r--applications/luci-app-upnp/po/ca/upnp.po4
-rw-r--r--applications/luci-app-upnp/po/cs/upnp.po4
-rw-r--r--applications/luci-app-upnp/po/de/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/el/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/en/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/es/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/fr/upnp.po4
-rw-r--r--applications/luci-app-upnp/po/he/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/hu/upnp.po4
-rw-r--r--applications/luci-app-upnp/po/it/upnp.po4
-rw-r--r--applications/luci-app-upnp/po/ja/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/ms/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/no/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/pl/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/pt-br/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/pt/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/ro/upnp.po4
-rw-r--r--applications/luci-app-upnp/po/ru/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/sk/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/sv/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/templates/upnp.pot2
-rw-r--r--applications/luci-app-upnp/po/tr/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/uk/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/vi/upnp.po2
-rw-r--r--applications/luci-app-upnp/po/zh-cn/upnp.po4
-rw-r--r--applications/luci-app-upnp/po/zh-tw/upnp.po2
-rw-r--r--applications/luci-app-vnstat/luasrc/view/vnstat.htm2
-rw-r--r--applications/luci-app-voice-core/Makefile2
-rw-r--r--applications/luci-app-voice-core/luasrc/view/luci_voice/index.htm2
-rw-r--r--applications/luci-app-voice-core/luasrc/view/luci_voice/phone_index.htm2
-rw-r--r--applications/luci-app-voice-diag/Makefile2
-rw-r--r--applications/luci-app-voice-diag/luasrc/view/luci_voice/diag_index.htm2
190 files changed, 3691 insertions, 1142 deletions
diff --git a/applications/luci-app-ahcp/luasrc/view/ahcp_status.htm b/applications/luci-app-ahcp/luasrc/view/ahcp_status.htm
index 88796cb1c5..946828953e 100644
--- a/applications/luci-app-ahcp/luasrc/view/ahcp_status.htm
+++ b/applications/luci-app-ahcp/luasrc/view/ahcp_status.htm
@@ -1,5 +1,5 @@
<script type="text/javascript">//<![CDATA[
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "network", "ahcpd", "status")%>', null,
+ XHR.poll(5, '<%=url('admin/network/ahcpd/status')%>', null,
function(x, st)
{
var tb = document.getElementById('ahcpd_status_table');
diff --git a/applications/luci-app-asterisk/Makefile b/applications/luci-app-asterisk/Makefile
index f2f3cd1e73..3434e167f4 100644
--- a/applications/luci-app-asterisk/Makefile
+++ b/applications/luci-app-asterisk/Makefile
@@ -7,7 +7,6 @@
include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI Support for Asterisk
-LUCI_DEPENDS:=+ahcpd
include ../../luci.mk
diff --git a/applications/luci-app-asterisk/luasrc/view/asterisk/dialplans.htm b/applications/luci-app-asterisk/luasrc/view/asterisk/dialplans.htm
index 70f986c5bb..9f644ba074 100644
--- a/applications/luci-app-asterisk/luasrc/view/asterisk/dialplans.htm
+++ b/applications/luci-app-asterisk/luasrc/view/asterisk/dialplans.htm
@@ -56,7 +56,7 @@
%>
-<form method="post" action="<%=luci.dispatcher.build_url("admin", "asterisk", "dialplans")%>" enctype="multipart/form-data">
+<form method="post" action="<%=url('admin/asterisk/dialplans')%>" enctype="multipart/form-data">
<div>
<script type="text/javascript" src="/luci-static/resources/cbi.js"></script>
<input type="hidden" name="cbi.submit" value="1" />
@@ -64,13 +64,13 @@
</div>
<div class="cbi-map" id="cbi-asterisk">
- <h2><a id="content" name="content">Outgoing Call Routing</a></h2>
+ <h2 name="content">Outgoing Call Routing</h2>
<div class="cbi-map-descr">
Here you can manage your dial plans which are used to route outgoing calls from your local extensions.<br /><br />
Related tasks:<br />
- <a href="<%=luci.dispatcher.build_url('admin/asterisk/dialplans/zones')%>" class="cbi-title-ref">Manage dialzones</a> |
- <a href="<%=luci.dispatcher.build_url('admin/asterisk/voicemail/mailboxes')%>" class="cbi-title-ref">Manage voicemail boxes</a> |
- <a href="<%=luci.dispatcher.build_url('admin/asterisk/meetme/rooms')%>" class="cbi-title-ref">Manage meetme rooms</a>
+ <a href="<%=url('admin/asterisk/dialplans/zones')%>" class="cbi-title-ref">Manage dialzones</a> |
+ <a href="<%=url('admin/asterisk/voicemail/mailboxes')%>" class="cbi-title-ref">Manage voicemail boxes</a> |
+ <a href="<%=url('admin/asterisk/meetme/rooms')%>" class="cbi-title-ref">Manage meetme rooms</a>
</div>
<!-- tblsection -->
<fieldset class="cbi-section" id="cbi-asterisk-sip">
@@ -85,7 +85,7 @@
<big>Dialplan <em><%=plan.name%></em></big>
</th>
<td>
- <a href="<%=luci.dispatcher.build_url('admin', 'asterisk', 'dialplans')%>?delplan=<%=plan.name%>">
+ <a href="<%=url('admin/asterisk/dialplans')%>?delplan=<%=plan.name%>">
<img style="border:none" alt="Remove this dialplan" title="Remove this dialplan" src="/luci-static/resources/cbi/remove.gif" />
</a>
</td>
@@ -109,10 +109,10 @@
</p>
</td>
<td style="width:5%" class="cbi-value-field">
- <a href="<%=luci.dispatcher.build_url('admin/asterisk/dialplans/out', zone.name)%>">
+ <a href="<%=url('admin/asterisk/dialplans/out', zone.name)%>">
<img style="border:none" alt="Edit dialzone" title="Edit dialzone" src="/luci-static/resources/cbi/edit.gif" />
</a>
- <a href="<%=luci.dispatcher.build_url('admin/asterisk/dialplans')%>?delzone.<%=plan.name%>=<%=zone.name%>">
+ <a href="<%=url('admin/asterisk/dialplans')%>?delzone.<%=plan.name%>=<%=zone.name%>">
<img style="border:none" alt="Remove from this dialplan" title="Remove from this dialplan" src="/luci-static/resources/cbi/remove.gif" />
</a>
</td>
@@ -134,10 +134,10 @@
</p>
</td>
<td style="width:5%" class="cbi-value-field">
- <a href="<%=luci.dispatcher.build_url('admin/asterisk/voicemail/mailboxes')%>">
+ <a href="<%=url('admin/asterisk/voicemail/mailboxes')%>">
<img style="border:none" alt="Manage mailboxes ..." title="Manage mailboxes ..." src="/luci-static/resources/cbi/edit.gif" />
</a>
- <a href="<%=luci.dispatcher.build_url('admin/asterisk/dialplans')%>?delvbox.<%=plan.name%>=<%=ext%>">
+ <a href="<%=url('admin/asterisk/dialplans')%>?delvbox.<%=plan.name%>=<%=ext%>">
<img style="border:none" alt="Remove from this dialplan" title="Remove from this dialplan" src="/luci-static/resources/cbi/remove.gif" />
</a>
</td>
@@ -157,10 +157,10 @@
</p>
</td>
<td style="width:5%" class="cbi-value-field">
- <a href="<%=luci.dispatcher.build_url('admin/asterisk/meetme/rooms')%>">
+ <a href="<%=url('admin/asterisk/meetme/rooms')%>">
<img style="border:none" alt="Manage conferences ..." title="Manage conferences ..." src="/luci-static/resources/cbi/edit.gif" />
</a>
- <a href="<%=luci.dispatcher.build_url('admin/asterisk/dialplans')%>?delmeetme.<%=plan.name%>=<%=ext%>">
+ <a href="<%=url('admin/asterisk/dialplans')%>?delmeetme.<%=plan.name%>=<%=ext%>">
<img style="border:none" alt="Remove from this dialplan" title="Remove from this dialplan" src="/luci-static/resources/cbi/remove.gif" />
</a>
</td>
diff --git a/applications/luci-app-asterisk/luasrc/view/asterisk/dialzones.htm b/applications/luci-app-asterisk/luasrc/view/asterisk/dialzones.htm
index ac527918bc..ffdbbcf359 100644
--- a/applications/luci-app-asterisk/luasrc/view/asterisk/dialzones.htm
+++ b/applications/luci-app-asterisk/luasrc/view/asterisk/dialzones.htm
@@ -47,7 +47,7 @@
%>
-<form method="post" action="<%=luci.dispatcher.build_url("admin", "asterisk", "dialplans", "zones")%>" enctype="multipart/form-data">
+<form method="post" action="<%=url('admin/asterisk/dialplans/zones')%>" enctype="multipart/form-data">
<div>
<script type="text/javascript" src="/luci-static/resources/cbi.js"></script>
<input type="hidden" name="cbi.submit" value="1" />
@@ -55,9 +55,9 @@
</div>
<div class="cbi-map" id="cbi-asterisk">
- <h2><a id="content" name="content">Dial Zone Management</a></h2>
+ <h2 name="content">Dial Zone Management</h2>
<div class="cbi-map-descr">
- <a href="<%=luci.dispatcher.build_url("admin/asterisk/dialplans")%>" class="cbi-title-ref">Back to dialplan overview</a><br /><br />
+ <a href="<%=url("admin/asterisk/dialplans")%>" class="cbi-title-ref">Back to dialplan overview</a><br /><br />
Here you can manage your dial zones. The zones are used to route outgoing calls to the destination.
Each zone groups multiple trunks and number matches to represent a logical destination. Zones can
also be used to enforce certain dial restrictions on selected extensions.
@@ -109,10 +109,10 @@
<%=rule.description or rule.name%>
</td>
<td style="text-align:left" class="cbi-value-field">
- <a href="<%=luci.dispatcher.build_url('admin', 'asterisk', 'dialplans', 'out', rule.name)%>">
+ <a href="<%=url('admin/asterisk/dialplans/out', rule.name)%>">
<img style="border:none" alt="Edit entry" title="Edit entry" src="/luci-static/resources/cbi/edit.gif" />
</a>
- <a href="<%=luci.dispatcher.build_url('admin', 'asterisk', 'dialplans', 'zones')%>?delzone=<%=rule.name%>">
+ <a href="<%=url('admin/asterisk/dialplans/zones')%>?delzone=<%=rule.name%>">
<img style="border:none" alt="Delete entry" title="Delete entry" src="/luci-static/resources/cbi/remove.gif" />
</a>
</td>
diff --git a/applications/luci-app-commands/luasrc/view/commands.htm b/applications/luci-app-commands/luasrc/view/commands.htm
index 72f1e1dab3..73b9e6a2ce 100644
--- a/applications/luci-app-commands/luasrc/view/commands.htm
+++ b/applications/luci-app-commands/luasrc/view/commands.htm
@@ -58,7 +58,7 @@
legend.parentNode.style.display = 'block';
legend.style.display = 'inline';
- stxhr.get('<%=luci.dispatcher.build_url("admin", "system", "commands", "run")%>/' + id + (args ? '/' + args : ''), null,
+ stxhr.get('<%=url('admin/system/commands/run')%>/' + id + (args ? '/' + args : ''), null,
function(x, st)
{
if (st)
@@ -93,7 +93,7 @@
if (field)
args = encodeURIComponent(field.value);
- location.href = '<%=luci.dispatcher.build_url("admin", "system", "commands", "download")%>/' + id + (args ? '/' + args : '');
+ location.href = '<%=url('admin/system/commands/download')%>/' + id + (args ? '/' + args : '');
}
function command_link(id)
@@ -135,7 +135,7 @@
<form method="get" action="<%=pcdata(luci.http.getenv("REQUEST_URI"))%>">
<div class="cbi-map">
- <h2><a id="content" name="content"><%:Custom Commands%></a></h2>
+ <h2 name="content"><%:Custom Commands%></h2>
<fieldset class="cbi-section">
<% local _, command; for _, command in ipairs(commands) do %>
diff --git a/applications/luci-app-ddns/luasrc/controller/ddns.lua b/applications/luci-app-ddns/luasrc/controller/ddns.lua
index 946dfefbc8..29598ea8ad 100644
--- a/applications/luci-app-ddns/luasrc/controller/ddns.lua
+++ b/applications/luci-app-ddns/luasrc/controller/ddns.lua
@@ -10,39 +10,107 @@ local NX = require "nixio"
local NXFS = require "nixio.fs"
local DISP = require "luci.dispatcher"
local HTTP = require "luci.http"
-local UCI = require "luci.model.uci"
+local I18N = require "luci.i18n" -- not globally avalible here
+local IPKG = require "luci.model.ipkg"
local SYS = require "luci.sys"
-local DDNS = require "luci.tools.ddns" -- ddns multiused functions
+local UCI = require "luci.model.uci"
local UTIL = require "luci.util"
+local DDNS = require "luci.tools.ddns" -- ddns multiused functions
-DDNS_MIN = "2.4.2-1" -- minimum version of service required
+local srv_name = "ddns-scripts"
+local srv_ver_min = "2.5.0" -- minimum version of service required
+local srv_ver_cmd = [[/usr/lib/ddns/dynamic_dns_updater.sh --version | awk {'print $2'}]]
+local app_name = "luci-app-ddns"
+local app_title = "Dynamic DNS"
+local app_version = "2.3.0-1"
function index()
local nxfs = require "nixio.fs" -- global definitions not available
local sys = require "luci.sys" -- in function index()
local ddns = require "luci.tools.ddns" -- ddns multiused functions
- local verinst = ddns.ipkg_ver_installed("ddns-scripts")
- local verok = ddns.ipkg_ver_compare(verinst, ">=", "2.0.0-0")
- -- do NOT start it not ddns-scripts version 2.x
- if not verok then
- return
- end
+ local muci = require "luci.model.uci"
+
-- no config create an empty one
if not nxfs.access("/etc/config/ddns") then
nxfs.writefile("/etc/config/ddns", "")
end
+ -- preset new option "lookup_host" if not already defined
+ local uci = muci.cursor()
+ local commit = false
+ uci:foreach("ddns", "service", function (s)
+ if not s["lookup_host"] and s["domain"] then
+ uci:set("ddns", s[".name"], "lookup_host", s["domain"])
+ commit = true
+ end
+ end)
+ if commit then uci:commit("ddns") end
+ uci:unload("ddns")
+
entry( {"admin", "services", "ddns"}, cbi("ddns/overview"), _("Dynamic DNS"), 59)
entry( {"admin", "services", "ddns", "detail"}, cbi("ddns/detail"), nil ).leaf = true
entry( {"admin", "services", "ddns", "hints"}, cbi("ddns/hints",
{hideapplybtn=true, hidesavebtn=true, hideresetbtn=true}), nil ).leaf = true
entry( {"admin", "services", "ddns", "global"}, cbi("ddns/global"), nil ).leaf = true
entry( {"admin", "services", "ddns", "logview"}, call("logread") ).leaf = true
- entry( {"admin", "services", "ddns", "startstop"}, call("startstop") ).leaf = true
+ entry( {"admin", "services", "ddns", "startstop"}, post("startstop") ).leaf = true
entry( {"admin", "services", "ddns", "status"}, call("status") ).leaf = true
end
--- function to read all sections status and return data array
+-- Application specific information functions
+function app_description()
+ return I18N.translate("Dynamic DNS allows that your router can be reached with " ..
+ "a fixed hostname while having a dynamically changing IP address.")
+ .. [[<br />]]
+ .. I18N.translate("OpenWrt Wiki") .. ": "
+ .. [[<a href="http://wiki.openwrt.org/doc/howto/ddns.client" target="_blank">]]
+ .. I18N.translate("DDNS Client Documentation") .. [[</a>]]
+ .. " --- "
+ .. [[<a href="http://wiki.openwrt.org/doc/uci/ddns" target="_blank">]]
+ .. I18N.translate("DDNS Client Configuration") .. [[</a>]]
+end
+function app_title_back()
+ return [[<a href="]]
+ .. DISP.build_url("admin", "services", "ddns")
+ .. [[">]]
+ .. I18N.translate(app_title)
+ .. [[</a>]]
+end
+
+-- Standardized application/service functions
+function app_title_main()
+ return [[<a href="javascript:alert(']]
+ .. I18N.translate("Version Information")
+ .. [[\n\n]] .. app_name
+ .. [[\n\t]] .. I18N.translate("Version") .. [[:\t]] .. app_version
+ .. [[\n\n]] .. srv_name .. [[ ]] .. I18N.translate("required") .. [[:]]
+ .. [[\n\t]] .. I18N.translate("Version") .. [[:\t]]
+ .. srv_ver_min .. [[ ]] .. I18N.translate("or higher")
+ .. [[\n\n]] .. srv_name .. [[ ]] .. I18N.translate("installed") .. [[:]]
+ .. [[\n\t]] .. I18N.translate("Version") .. [[:\t]]
+ .. (service_version() or I18N.translate("NOT installed"))
+ .. [[\n\n]]
+ .. [[')">]]
+ .. I18N.translate(app_title)
+ .. [[</a>]]
+end
+function service_version()
+ local ver = nil
+ IPKG.list_installed(srv_name, function(n, ver, d)
+ -- nothing to do
+ end
+ )
+ if not ver then
+ ver = UTIL.exec(srv_ver_cmd)
+ if #ver == 0 then ver = nil end
+ end
+ return ver
+end
+function service_ok()
+ return IPKG.compare_versions((service_version() or "0"), ">=", srv_ver_min)
+end
+
+-- internal function to read all sections status and return data array
local function _get_status()
local uci = UCI.cursor()
local service = SYS.init.enabled("ddns") and 1 or 0
@@ -118,12 +186,12 @@ local function _get_status()
end
-- try to get registered IP
- local domain = s["domain"] or "_nodomain_"
+ local lookup_host = s["lookup_host"] or "_nolookup_"
local dnsserver = s["dns_server"] or ""
local force_ipversion = tonumber(s["force_ipversion"] or 0)
local force_dnstcp = tonumber(s["force_dnstcp"] or 0)
local command = [[/usr/lib/ddns/dynamic_dns_lucihelper.sh]]
- command = command .. [[ get_registered_ip ]] .. domain .. [[ ]] .. use_ipv6 ..
+ command = command .. [[ get_registered_ip ]] .. lookup_host .. [[ ]] .. use_ipv6 ..
[[ ]] .. force_ipversion .. [[ ]] .. force_dnstcp .. [[ ]] .. dnsserver
local reg_ip = SYS.exec(command)
if reg_ip == "" then
@@ -135,7 +203,7 @@ local function _get_status()
section = section,
enabled = enabled,
iface = iface,
- domain = domain,
+ lookup = lookup_host,
reg_ip = reg_ip,
pid = pid,
datelast = datelast,
@@ -235,3 +303,4 @@ function status()
HTTP.prepare_content("application/json")
HTTP.write_json(data)
end
+
diff --git a/applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua b/applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua
index 27f9a9f264..88429fd12c 100644
--- a/applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua
+++ b/applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua
@@ -8,13 +8,15 @@ local NX = require "nixio"
local NXFS = require "nixio.fs"
local SYS = require "luci.sys"
local UTIL = require "luci.util"
+local HTTP = require "luci.http"
local DISP = require "luci.dispatcher"
local WADM = require "luci.tools.webadmin"
local DTYP = require "luci.cbi.datatypes"
+local CTRL = require "luci.controller.ddns" -- this application's controller
local DDNS = require "luci.tools.ddns" -- ddns multiused functions
-- takeover arguments -- #######################################################
-local section = arg[1]
+local section = arg[1]
-- check supported options -- ##################################################
-- saved to local vars here because doing multiple os calls slow down the system
@@ -31,15 +33,15 @@ local bold_on = "<strong>"
local bold_off = "</strong>"
-- error text constants -- #####################################################
-err_ipv6_plain = translate("IPv6 not supported") .. " - " ..
+local err_ipv6_plain = translate("IPv6 not supported") .. " - " ..
translate("please select 'IPv4' address version")
-err_ipv6_basic = bold_on ..
+local err_ipv6_basic = bold_on ..
font_red ..
translate("IPv6 not supported") ..
font_off ..
"<br />" .. translate("please select 'IPv4' address version") ..
bold_off
-err_ipv6_other = bold_on ..
+local err_ipv6_other = bold_on ..
font_red ..
translate("IPv6 not supported") ..
font_off ..
@@ -52,16 +54,46 @@ err_ipv6_other = bold_on ..
[[</a>]] ..
bold_off
-function err_tab_basic(self)
+local function err_tab_basic(self)
return translate("Basic Settings") .. " - " .. self.title .. ": "
end
-function err_tab_adv(self)
+local function err_tab_adv(self)
return translate("Advanced Settings") .. " - " .. self.title .. ": "
end
-function err_tab_timer(self)
+local function err_tab_timer(self)
return translate("Timer Settings") .. " - " .. self.title .. ": "
end
+-- read services/services_ipv6 files -- ########################################
+local services4 = { } -- IPv4 --
+local fd4 = io.open("/usr/lib/ddns/services", "r")
+if fd4 then
+ local ln, s, t
+ repeat
+ ln = fd4:read("*l")
+ s = ln and ln:match('^%s*".*') -- only handle lines beginning with "
+ s = s and s:gsub('"','') -- remove "
+ t = s and UTIL.split(s,"(%s+)",nil,true) -- split on whitespaces
+ if t then services4[t[1]]=t[2] end
+ until not ln
+ fd4:close()
+end
+
+local services6 = { } -- IPv6 --
+local fd6 = io.open("/usr/lib/ddns/services_ipv6", "r")
+if fd6 then
+ local ln, s, t
+ repeat
+ ln = fd6:read("*l")
+ s = ln and ln:match('^%s*".*') -- only handle lines beginning with "
+ s = s and s:gsub('"','') -- remove "
+ t = s and UTIL.split(s,"(%s+)",nil,true) -- split on whitespaces
+ if t then services6[t[1]]=t[2] end
+ until not ln
+ fd6:close()
+end
+
+-- multi-used functions -- ####################################################
-- function to verify settings around ip_source
-- will use dynamic_dns_lucihelper to check if
-- local IP can be read
@@ -105,18 +137,94 @@ local function _verify_ip_source()
end
end
--- cbi-map definition -- #######################################################
-m = Map("ddns")
+-- function to check if option is used inside url or script
+-- return -1 on error, 0 NOT required, 1 required
+local function _option_used(option, urlscript)
+ local surl -- search string for url
+ local ssh -- search string for script
+ local required -- option used inside url or script
--- first need to close <a> from cbi map template our <a> closed by template
-m.title = [[</a><a href="]] .. DISP.build_url("admin", "services", "ddns") .. [[">]] ..
- translate("Dynamic DNS")
+ if option == "domain" then surl, ssh = '%[DOMAIN%]', '%$domain'
+ elseif option == "username" then surl, ssh = '%[USERNAME%]', '%$username'
+ elseif option == "password" then surl, ssh = '%[PASSWORD%]', '%$password'
+ elseif option == "param_enc" then surl, ssh = '%[PARAMENC%]', '%$param_enc'
+ elseif option == "param_opt" then surl, ssh = '%[PARAMOPT%]', '%$param_opt'
+ else
+ error("undefined option")
+ return -1 -- return on error
+ end
-m.description = translate("Dynamic DNS allows that your router can be reached with " ..
- "a fixed hostname while having a dynamically changing " ..
- "IP address.")
+ local required = false
+ -- handle url
+ if urlscript:find('http') then
+ required = ( urlscript:find(surl) )
+ -- handle script
+ else
+ if not urlscript:find("/") then
+ -- might be inside ddns-scripts directory
+ urlscript = "/usr/lib/ddns/" .. urlscript
+ end
+ -- problem with script exit here
+ if not NXFS.access(urlscript) then return -1 end
+
+ local f = io.input(urlscript)
+ -- still problem with script exit here
+ if not f then return -1 end
+ for l in f:lines() do
+ repeat
+ if l:find('^#') then break end -- continue on comment lines
+ required = ( l:find(surl) or l:find(ssh) )
+ until true
+ if required then break end
+ end
+ f:close()
+ end
+ return (required and 1 or 0)
+end
-m.redirect = DISP.build_url("admin", "services", "ddns")
+-- function to verify if option is valid
+local function _option_validate(self, value)
+ -- section is globally defined here be calling agrument (see above)
+ local fusev6 = usev6:formvalue(section)
+ local fsvc4 = svc4:formvalue(section)
+ local fsvc6 = svc6:formvalue(section)
+ local urlsh, used
+
+ -- IP-Version dependent custom service selected
+ if (fusev6 == "0" and fsvc4 == "-") or
+ (fusev6 == "1" and fsvc6 == "-") then
+ -- read custom url
+ urlsh = uurl:formvalue(section)
+ -- no url then read custom script
+ if not urlsh or (#urlsh == 0) then
+ urlsh = ush:formvalue(section)
+ end
+ -- IPv4 read from services4 table
+ elseif (fusev6 == "0") then
+ urlsh = services4[fsvc4]
+ -- IPv6 read from services6 table
+ else
+ urlsh = services6[fsvc6]
+ end
+ -- problem with url or script exit here
+ -- error handled somewhere else
+ if not urlsh or (#urlsh == 0) then return "" end
+
+ used = _option_used(self.option, urlsh)
+ -- on error or not used return empty sting
+ if used < 1 then return "" end
+ -- needed but no data then return error
+ if not value or (#value == 0) then
+ return nil, err_tab_basic(self) .. translate("missing / required")
+ end
+ return value
+end
+
+-- cbi-map definition -- #######################################################
+local m = Map("ddns")
+m.title = CTRL.app_title_back()
+m.description = CTRL.app_description()
+m.redirect = DISP.build_url("admin", "services", "ddns")
m.on_after_commit = function(self)
if self.changed then -- changes ?
@@ -127,19 +235,42 @@ m.on_after_commit = function(self)
end
end
+-- provider switch was requested, save and reload page
+if m:formvalue("cbid.ddns.%s._switch" % section) then -- section == arg[1]
+ local fsvc
+ local fusev6 = m:formvalue("cbid.ddns.%s.use_ipv6" % section)
+ if fusev6 == "1" then
+ fsvc = m:formvalue("cbid.ddns.%s.ipv6_service_name" % section)
+ else
+ fsvc = m:formvalue("cbid.ddns.%s.ipv4_service_name" % section)
+ end
+
+ if fusev6 ~= (m:get(section, "use_ipv6") or "0") then -- IPv6 was changed
+ m:set(section, "use_ipv6", fusev6) -- save it
+ end
+
+ if fsvc ~= "-" then -- NOT "custom"
+ m:set(section, "service_name", fsvc) -- save it
+ else -- else
+ m:del(section, "service_name") -- delete it
+ end
+ m.uci:save(m.config)
+
+ -- reload page
+ HTTP.redirect( DISP.build_url("admin", "services", "ddns", "detail", section) )
+ return
+end
+
-- read application settings -- ################################################
-- date format; if not set use ISO format
-date_format = m.uci:get(m.config, "global", "date_format") or "%F %R"
+local date_format = m.uci:get(m.config, "global", "date_format") or "%F %R"
-- log directory
-log_dir = m.uci:get(m.config, "global", "log_dir") or "/var/log/ddns"
+local log_dir = m.uci:get(m.config, "global", "log_dir") or "/var/log/ddns"
-- cbi-section definition -- ###################################################
-ns = m:section( NamedSection, section, "service",
+local ns = m:section( NamedSection, section, "service",
translate("Details for") .. ([[: <strong>%s</strong>]] % section),
- translate("Configure here the details for selected Dynamic DNS service.")
- .. [[<br /><a href="http://wiki.openwrt.org/doc/uci/ddns#version_1x" target="_blank">]]
- .. translate("For detailed information about parameter settings look here.")
- .. [[</a>]] )
+ translate("Configure here the details for selected Dynamic DNS service.") )
ns.instance = section -- arg [1]
ns:tab("basic", translate("Basic Settings"), nil )
ns:tab("advanced", translate("Advanced Settings"), nil )
@@ -147,17 +278,33 @@ ns:tab("timer", translate("Timer Settings"), nil )
ns:tab("logview", translate("Log File Viewer"), nil )
-- TAB: Basic #####################################################################################
--- enabled -- #################################################################
+-- enabled -- #################################################################
en = ns:taboption("basic", Flag, "enabled",
translate("Enabled"),
translate("If this service section is disabled it could not be started." .. "<br />" ..
"Neither from LuCI interface nor from console") )
en.orientation = "horizontal"
-function en.parse(self, section)
- DDNS.flag_parse(self, section)
+
+-- IPv4/IPv6 - lookup_host -- #################################################
+luh = ns:taboption("basic", Value, "lookup_host",
+ translate("Lookup Hostname"),
+ translate("Hostname/FQDN to validate, if IP update happen or necessary") )
+luh.rmempty = false
+luh.placeholder = "myhost.example.com"
+function luh.validate(self, value)
+ if not value
+ or not (#value > 0)
+ or not DTYP.hostname(value) then
+ return nil, err_tab_basic(self) .. translate("invalid FQDN / required - Sample") .. ": 'myhost.example.com'"
+ else
+ return UTIL.trim(value)
+ end
+end
+function luh.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
end
--- use_ipv6 (NEW) -- ##########################################################
+-- use_ipv6 -- ################################################################
usev6 = ns:taboption("basic", ListValue, "use_ipv6",
translate("IP address version"),
translate("Defines which IP address 'IPv4/IPv6' is send to the DDNS provider") )
@@ -180,36 +327,15 @@ function usev6.validate(self, value)
end
return nil, err_tab_basic(self) .. err_ipv6_plain
end
-function usev6.write(self, section, value)
- if value == "0" then -- force rmempty
- return self.map:del(section, self.option)
- else
- return self.map:set(section, self.option, value)
- end
+function usev6.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
end
--- IPv4 - service_name -- ######################################################
+-- IPv4 - service_name -- #####################################################
svc4 = ns:taboption("basic", ListValue, "ipv4_service_name",
translate("DDNS Service provider") .. " [IPv4]" )
svc4.default = "-"
svc4:depends("use_ipv6", "0") -- only show on IPv4
-
-local services4 = { }
-local fd4 = io.open("/usr/lib/ddns/services", "r")
-
-if fd4 then
- local ln
- repeat
- ln = fd4:read("*l")
- local s = ln and ln:match('^%s*"([^"]+)"')
- if s then services4[#services4+1] = s end
- until not ln
- fd4:close()
-end
-
-for _, v in UTIL.vspairs(services4) do svc4:value(v) end
-svc4:value("-", translate("-- custom --") )
-
function svc4.cfgvalue(self, section)
local v = DDNS.read_value(self, section, "service_name")
if not v or #v == 0 then
@@ -230,14 +356,18 @@ function svc4.write(self, section, value)
self.map:del(section, self.option) -- to be shure
if value ~= "-" then -- and write "service_name
self.map:del(section, "update_url") -- delete update_url
+ self.map:del(section, "update_script") -- delete update_script
return self.map:set(section, "service_name", value)
else
return self.map:del(section, "service_name")
end
end
end
+function svc4.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv6 - service_name -- ######################################################
+-- IPv6 - service_name -- #####################################################
svc6 = ns:taboption("basic", ListValue, "ipv6_service_name",
translate("DDNS Service provider") .. " [IPv6]" )
svc6.default = "-"
@@ -245,23 +375,6 @@ svc6:depends("use_ipv6", "1") -- only show on IPv6
if not has_ipv6 then
svc6.description = err_ipv6_basic
end
-
-local services6 = { }
-local fd6 = io.open("/usr/lib/ddns/services_ipv6", "r")
-
-if fd6 then
- local ln
- repeat
- ln = fd6:read("*l")
- local s = ln and ln:match('^%s*"([^"]+)"')
- if s then services6[#services6+1] = s end
- until not ln
- fd6:close()
-end
-
-for _, v in UTIL.vspairs(services6) do svc6:value(v) end
-svc6:value("-", translate("-- custom --") )
-
function svc6.cfgvalue(self, section)
local v = DDNS.read_value(self, section, "service_name")
if not v or #v == 0 then
@@ -283,33 +396,42 @@ function svc6.write(self, section, value)
self.map:del(section, self.option) -- delete "ipv6_service_name" helper
if value ~= "-" then -- and write "service_name
self.map:del(section, "update_url") -- delete update_url
+ self.map:del(section, "update_script") -- delete update_script
return self.map:set(section, "service_name", value)
else
return self.map:del(section, "service_name")
end
end
end
+function svc6.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
+
+-- IPv4/IPv6 - change Provider -- #############################################
+svs = ns:taboption("basic", Button, "_switch")
+svs.title = translate("Really change DDNS provider?")
+svs.inputtitle = translate("Change provider")
+svs.inputstyle = "apply"
--- IPv4/IPv6 - update_url -- ###################################################
+-- IPv4/IPv6 - update_url -- ##################################################
uurl = ns:taboption("basic", Value, "update_url",
translate("Custom update-URL"),
translate("Update URL to be used for updating your DDNS Provider." .. "<br />" ..
"Follow instructions you will find on their WEB page.") )
-uurl:depends("ipv4_service_name", "-")
-uurl:depends("ipv6_service_name", "-")
function uurl.validate(self, value)
- local script = ush:formvalue(section)
+ local fush = ush:formvalue(section)
+ local fusev6 = usev6:formvalue(section)
- if (usev6:formvalue(section) == "0" and svc4:formvalue(section) ~= "-") or
- (usev6:formvalue(section) == "1" and svc6:formvalue(section) ~= "-") then
+ if (fusev6 == "0" and svc4:formvalue(section) ~= "-") or
+ (fusev6 == "1" and svc6:formvalue(section) ~= "-") then
return "" -- suppress validate error
elseif not value then
- if not script or not (#script > 0) then
+ if not fush or (#fush == 0) then
return nil, err_tab_basic(self) .. translate("missing / required")
else
return "" -- suppress validate error / update_script is given
end
- elseif (#script > 0) then
+ elseif (#fush > 0) then
return nil, err_tab_basic(self) .. translate("either url or script could be set")
end
@@ -326,80 +448,159 @@ function uurl.validate(self, value)
return value
end
+function uurl.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv4/IPv6 - update_script -- ################################################
+-- IPv4/IPv6 - update_script -- ###############################################
ush = ns:taboption("basic", Value, "update_script",
translate("Custom update-script"),
translate("Custom update script to be used for updating your DDNS Provider.") )
-ush:depends("ipv4_service_name", "-")
-ush:depends("ipv6_service_name", "-")
function ush.validate(self, value)
- local url = uurl:formvalue(section)
+ local fuurl = uurl:formvalue(section)
+ local fusev6 = usev6:formvalue(section)
- if (usev6:formvalue(section) == "0" and svc4:formvalue(section) ~= "-") or
- (usev6:formvalue(section) == "1" and svc6:formvalue(section) ~= "-") then
+ if (fusev6 == "0" and svc4:formvalue(section) ~= "-") or
+ (fusev6 == "1" and svc6:formvalue(section) ~= "-") then
return "" -- suppress validate error
elseif not value then
- if not url or not (#url > 0) then
+ if not fuurl or (#fuurl == 0) then
return nil, err_tab_basic(self) .. translate("missing / required")
else
return "" -- suppress validate error / update_url is given
end
- elseif (#url > 0) then
+ elseif (#fuurl > 0) then
return nil, err_tab_basic(self) .. translate("either url or script could be set")
elseif not NXFS.access(value) then
return nil, err_tab_basic(self) .. translate("File not found")
end
return value
end
+function ush.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv4/IPv6 - domain -- #######################################################
+-- IPv4/IPv6 - domain -- ######################################################
dom = ns:taboption("basic", Value, "domain",
- translate("Hostname/Domain"),
+ translate("Domain"),
translate("Replaces [DOMAIN] in Update-URL") )
-dom.rmempty = false
-dom.placeholder = "mypersonaldomain.dyndns.org"
+dom.placeholder = "myhost.example.com"
function dom.validate(self, value)
- if not value
- or not (#value > 0)
- or not DTYP.hostname(value) then
- return nil, err_tab_basic(self) .. translate("invalid - Sample") .. ": 'mypersonaldomain.dyndns.org'"
- else
- return value
- end
+ return _option_validate(self, value)
+end
+function dom.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
end
--- IPv4/IPv6 - username -- #####################################################
+-- IPv4/IPv6 - username -- ####################################################
user = ns:taboption("basic", Value, "username",
translate("Username"),
- translate("Replaces [USERNAME] in Update-URL") )
-user.rmempty = false
+ translate("Replaces [USERNAME] in Update-URL (URL-encoded)") )
function user.validate(self, value)
- if not value then
- return nil, err_tab_basic(self) .. translate("missing / required")
- end
- return value
+ return _option_validate(self, value)
+end
+function user.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
end
--- IPv4/IPv6 - password -- #####################################################
+-- IPv4/IPv6 - password -- ####################################################
pw = ns:taboption("basic", Value, "password",
translate("Password"),
- translate("Replaces [PASSWORD] in Update-URL") )
-pw.rmempty = false
+ translate("Replaces [PASSWORD] in Update-URL (URL-encoded)") )
pw.password = true
function pw.validate(self, value)
- if not value then
- return nil, err_tab_basic(self) .. translate("missing / required")
+ return _option_validate(self, value)
+end
+function pw.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
+
+-- IPv4/IPv6 - param_enc -- ###################################################
+pe = ns:taboption("basic", Value, "param_enc",
+ translate("Optional Encoded Parameter"),
+ translate("Optional: Replaces [PARAMENC] in Update-URL (URL-encoded)") )
+function pe.validate(self, value)
+ return _option_validate(self, value)
+end
+function pe.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
+
+-- IPv4/IPv6 - param_enc -- ###################################################
+po = ns:taboption("basic", Value, "param_opt",
+ translate("Optional Parameter"),
+ translate("Optional: Replaces [PARAMOPT] in Update-URL (NOT URL-encoded)") )
+function po.validate(self, value)
+ return _option_validate(self, value)
+end
+function po.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
+
+-- handled service dependent show/display -- ##################################
+-- IPv4 --
+local cv4 = svc4:cfgvalue(section)
+if cv4 ~= "-" then
+ svs:depends ("ipv4_service_name", "-" ) -- show only if "-"
+ ush:depends ("ipv4_service_name", "?")
+ uurl:depends("ipv4_service_name", "?")
+else
+ uurl:depends("ipv4_service_name", "-")
+ ush:depends ("ipv4_service_name", "-")
+ dom:depends("ipv4_service_name", "-" )
+ user:depends("ipv4_service_name", "-" )
+ pw:depends("ipv4_service_name", "-" )
+ pe:depends("ipv4_service_name", "-" )
+ po:depends("ipv4_service_name", "-" )
+end
+for s, u in UTIL.kspairs(services4) do
+ svc4:value(s) -- fill DropDown-List
+ if cv4 ~= s then
+ svs:depends("ipv4_service_name", s )
+ else
+ dom:depends ("ipv4_service_name", ((_option_used(dom.option, u) == 1) and s or "?") )
+ user:depends("ipv4_service_name", ((_option_used(user.option, u) == 1) and s or "?") )
+ pw:depends ("ipv4_service_name", ((_option_used(pw.option, u) == 1) and s or "?") )
+ pe:depends ("ipv4_service_name", ((_option_used(pe.option, u) == 1) and s or "?") )
+ po:depends ("ipv4_service_name", ((_option_used(po.option, u) == 1) and s or "?") )
end
- return value
end
+svc4:value("-", translate("-- custom --") )
+
+-- IPv6 --
+local cv6 = svc6:cfgvalue(section)
+if cv6 ~= "-" then
+ svs:depends ("ipv6_service_name", "-" )
+ uurl:depends("ipv6_service_name", "?")
+ ush:depends ("ipv6_service_name", "?")
+else
+ uurl:depends("ipv6_service_name", "-")
+ ush:depends ("ipv6_service_name", "-")
+ dom:depends("ipv6_service_name", "-" )
+ user:depends("ipv6_service_name", "-" )
+ pw:depends("ipv6_service_name", "-" )
+ pe:depends("ipv6_service_name", "-" )
+ po:depends("ipv6_service_name", "-" )
+end
+for s, u in UTIL.kspairs(services6) do
+ svc6:value(s) -- fill DropDown-List
+ if cv6 ~= s then
+ svs:depends("ipv6_service_name", s )
+ else
+ dom:depends ("ipv6_service_name", ((_option_used(dom.option, u) == 1) and s or "?") )
+ user:depends("ipv6_service_name", ((_option_used(user.option, u) == 1) and s or "?") )
+ pw:depends ("ipv6_service_name", ((_option_used(pw.option, u) == 1) and s or "?") )
+ pe:depends ("ipv6_service_name", ((_option_used(pe.option, u) == 1) and s or "?") )
+ po:depends ("ipv6_service_name", ((_option_used(po.option, u) == 1) and s or "?") )
+ end
+end
+svc6:value("-", translate("-- custom --") )
--- IPv4/IPv6 - use_https (NEW) -- ##############################################
+-- IPv4/IPv6 - use_https -- ###################################################
if has_ssl or ( ( m:get(section, "use_https") or "0" ) == "1" ) then
https = ns:taboption("basic", Flag, "use_https",
translate("Use HTTP Secure") )
https.orientation = "horizontal"
- https.rmempty = false -- force validate function
function https.cfgvalue(self, section)
local value = AbstractValue.cfgvalue(self, section)
if not has_ssl and value == "1" then
@@ -411,9 +612,6 @@ if has_ssl or ( ( m:get(section, "use_https") or "0" ) == "1" ) then
end
return value
end
- function https.parse(self, section)
- DDNS.flag_parse(self, section)
- end
function https.validate(self, value)
if (value == "1" and has_ssl ) or value == "0" then return value end
return nil, err_tab_basic(self) .. translate("HTTPS not supported") .. " !"
@@ -428,7 +626,7 @@ if has_ssl or ( ( m:get(section, "use_https") or "0" ) == "1" ) then
end
end
--- IPv4/IPv6 - cacert (NEW) -- #################################################
+-- IPv4/IPv6 - cacert -- ######################################################
if has_ssl then
cert = ns:taboption("basic", Value, "cacert",
translate("Path to CA-Certificate"),
@@ -436,8 +634,8 @@ if has_ssl then
translate("or") .. bold_on .. " IGNORE " .. bold_off ..
translate("to run HTTPS without verification of server certificates (insecure)") )
cert:depends("use_https", "1")
- cert.rmempty = false -- force validate function
cert.default = "/etc/ssl/certs"
+ cert.forcewrite = true
function cert.validate(self, value)
if https:formvalue(section) == "0" then
return "" -- supress validate error if NOT https
@@ -452,10 +650,13 @@ if has_ssl then
return nil, err_tab_basic(self) ..
translate("file or directory not found or not 'IGNORE'") .. " !"
end
+ function cert.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+ end
end
--- TAB: Advanced ##################################################################################
--- IPv4 - ip_source -- #########################################################
+-- TAB: Advanced #################################################################################
+-- IPv4 - ip_source -- ########################################################
src4 = ns:taboption("advanced", ListValue, "ipv4_source",
translate("IP address source") .. " [IPv4]",
translate("Defines the source to read systems IPv4-Address from, that will be send to the DDNS provider") )
@@ -501,8 +702,11 @@ function src4.write(self, section, value)
self.map:del(section, self.option) -- delete "ipv4_source" helper
return self.map:set(section, "ip_source", value) -- and write "ip_source
end
+function src4.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv6 - ip_source -- #########################################################
+-- IPv6 - ip_source -- ########################################################
src6 = ns:taboption("advanced", ListValue, "ipv6_source",
translate("IP address source") .. " [IPv6]",
translate("Defines the source to read systems IPv6-Address from, that will be send to the DDNS provider") )
@@ -553,8 +757,11 @@ function src6.write(self, section, value)
self.map:del(section, self.option) -- delete "ipv4_source" helper
return self.map:set(section, "ip_source", value) -- and write "ip_source
end
+function src6.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv4 - ip_network (default "wan") -- ########################################
+-- IPv4 - ip_network (default "wan") -- #######################################
ipn4 = ns:taboption("advanced", ListValue, "ipv4_network",
translate("Network") .. " [IPv4]",
translate("Defines the network to read systems IPv4-Address from") )
@@ -587,8 +794,11 @@ function ipn4.write(self, section, value)
return self.map:set(section, "ip_network", value) -- and write "ip_network"
end
end
+function ipn4.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv6 - ip_network (default "wan6") -- #######################################
+-- IPv6 - ip_network (default "wan6") -- ######################################
ipn6 = ns:taboption("advanced", ListValue, "ipv6_network",
translate("Network") .. " [IPv6]" )
ipn6:depends("ipv6_source", "network")
@@ -627,8 +837,11 @@ function ipn6.write(self, section, value)
return self.map:set(section, "ip_network", value) -- and write "ip_network"
end
end
+function ipn6.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv4 - ip_url (default "checkip.dyndns.com") -- #############################
+-- IPv4 - ip_url (default "checkip.dyndns.com") -- ############################
iurl4 = ns:taboption("advanced", Value, "ipv4_url",
translate("URL to detect") .. " [IPv4]",
translate("Defines the Web page to read systems IPv4-Address from") )
@@ -669,8 +882,11 @@ function iurl4.write(self, section, value)
return self.map:set(section, "ip_url", value) -- and write "ip_url"
end
end
+function iurl4.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv6 - ip_url (default "checkipv6.dyndns.com") -- ###########################
+-- IPv6 - ip_url (default "checkipv6.dyndns.com") -- ##########################
iurl6 = ns:taboption("advanced", Value, "ipv6_url",
translate("URL to detect") .. " [IPv6]" )
iurl6:depends("ipv6_source", "web")
@@ -717,8 +933,11 @@ function iurl6.write(self, section, value)
return self.map:set(section, "ip_url", value) -- and write "ip_url"
end
end
+function iurl6.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv4 + IPv6 - ip_interface -- ###############################################
+-- IPv4 + IPv6 - ip_interface -- ##############################################
ipi = ns:taboption("advanced", ListValue, "ip_interface",
translate("Interface"),
translate("Defines the interface to read systems IP-Address from") )
@@ -733,16 +952,18 @@ for _, v in pairs(SYS.net.devices()) do
end
end
function ipi.validate(self, value)
- if (usev6:formvalue(section) == "0" and src4:formvalue(section) ~= "interface")
- or (usev6:formvalue(section) == "1" and src6:formvalue(section) ~= "interface") then
+ local fusev6 = usev6:formvalue(section)
+ if (fusev6 == "0" and src4:formvalue(section) ~= "interface")
+ or (fusev6 == "1" and src6:formvalue(section) ~= "interface") then
return ""
else
return value
end
end
function ipi.write(self, section, value)
- if (usev6:formvalue(section) == "0" and src4:formvalue(section) ~= "interface")
- or (usev6:formvalue(section) == "1" and src6:formvalue(section) ~= "interface") then
+ local fusev6 = usev6:formvalue(section)
+ if (fusev6 == "0" and src4:formvalue(section) ~= "interface")
+ or (fusev6 == "1" and src6:formvalue(section) ~= "interface") then
return true
else
-- get network from device to
@@ -752,21 +973,24 @@ function ipi.write(self, section, value)
return self.map:set(section, self.option, value)
end
end
+function ipi.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv4 + IPv6 - ip_script (NEW) -- ############################################
+-- IPv4 + IPv6 - ip_script -- #################################################
ips = ns:taboption("advanced", Value, "ip_script",
translate("Script"),
translate("User defined script to read systems IP-Address") )
ips:depends("ipv4_source", "script") -- IPv4
ips:depends("ipv6_source", "script") -- or IPv6
-ips.rmempty = false
ips.placeholder = "/path/to/script.sh"
function ips.validate(self, value)
+ local fusev6 = usev6:formvalue(section)
local split
if value then split = UTIL.split(value, " ") end
- if (usev6:formvalue(section) == "0" and src4:formvalue(section) ~= "script")
- or (usev6:formvalue(section) == "1" and src6:formvalue(section) ~= "script") then
+ if (fusev6 == "0" and src4:formvalue(section) ~= "script")
+ or (fusev6 == "1" and src6:formvalue(section) ~= "script") then
return ""
elseif not value or not (#value > 0) or not NXFS.access(split[1], "x") then
return nil, err_tab_adv(self) ..
@@ -776,15 +1000,19 @@ function ips.validate(self, value)
end
end
function ips.write(self, section, value)
- if (usev6:formvalue(section) == "0" and src4:formvalue(section) ~= "script")
- or (usev6:formvalue(section) == "1" and src6:formvalue(section) ~= "script") then
+ local fusev6 = usev6:formvalue(section)
+ if (fusev6 == "0" and src4:formvalue(section) ~= "script")
+ or (fusev6 == "1" and src6:formvalue(section) ~= "script") then
return true
else
return self.map:set(section, self.option, value)
end
end
+function ips.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv4 - interface - default "wan" -- #########################################
+-- IPv4 - interface - default "wan" -- ########################################
-- event network to monitor changes/hotplug/dynamic_dns_updater.sh
-- only needs to be set if "ip_source"="web" or "script"
-- if "ip_source"="network" or "interface" we use their network
@@ -799,27 +1027,32 @@ function eif4.cfgvalue(self, section)
return DDNS.read_value(self, section, "interface")
end
function eif4.validate(self, value)
+ local fsrc4 = src4:formvalue(section)
if usev6:formvalue(section) == "1"
- or src4:formvalue(section) == "network"
- or src4:formvalue(section) == "interface" then
+ or fsrc4 == "network"
+ or fsrc4 == "interface" then
return "" -- ignore IPv6, network, interface
else
return value
end
end
function eif4.write(self, section, value)
+ local fsrc4 = src4:formvalue(section)
if usev6:formvalue(section) == "1"
- or src4:formvalue(section) == "network"
- or src4:formvalue(section) == "interface" then
+ or fsrc4 == "network"
+ or fsrc4 == "interface" then
return true -- ignore IPv6, network, interface
else
self.map:del(section, self.option) -- delete "ipv4_interface" helper
return self.map:set(section, "interface", value) -- and write "interface"
end
end
+function eif4.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv6 - interface (NEW) - default "wan6" -- ##################################
--- event network to monitor changes/hotplug (NEW)
+-- IPv6 - interface - default "wan6" -- #######################################
+-- event network to monitor changes/hotplug
-- only needs to be set if "ip_source"="web" or "script"
-- if "ip_source"="network" or "interface" we use their network
eif6 = ns:taboption("advanced", ListValue, "ipv6_interface",
@@ -837,9 +1070,10 @@ function eif6.cfgvalue(self, section)
return DDNS.read_value(self, section, "interface")
end
function eif6.validate(self, value)
+ local fsrc6 = src6:formvalue(section)
if usev6:formvalue(section) == "0"
- or src4:formvalue(section) == "network"
- or src4:formvalue(section) == "interface" then
+ or fsrc6 == "network"
+ or fsrc6 == "interface" then
return "" -- ignore IPv4, network, interface
elseif not has_ipv6 then
return nil, err_tab_adv(self) .. err_ipv6_plain
@@ -848,23 +1082,26 @@ function eif6.validate(self, value)
end
end
function eif6.write(self, section, value)
+ local fsrc6 = src6:formvalue(section)
if usev6:formvalue(section) == "0"
- or src4:formvalue(section) == "network"
- or src4:formvalue(section) == "interface" then
+ or fsrc6 == "network"
+ or fsrc6 == "interface" then
return true -- ignore IPv4, network, interface
else
self.map:del(section, self.option) -- delete "ipv6_interface" helper
return self.map:set(section, "interface", value) -- and write "interface"
end
end
+function eif6.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv4/IPv6 - bind_network -- #################################################
+-- IPv4/IPv6 - bind_network -- ################################################
if has_ssl or ( ( m:get(section, "bind_network") or "" ) ~= "" ) then
bnet = ns:taboption("advanced", ListValue, "bind_network",
translate("Bind Network") )
bnet:depends("ipv4_source", "web")
bnet:depends("ipv6_source", "web")
- bnet.rmempty = true
bnet.default = ""
bnet:value("", translate("-- default --"))
WADM.cbi_add_networks(bnet)
@@ -884,9 +1121,12 @@ if has_ssl or ( ( m:get(section, "bind_network") or "" ) ~= "" ) then
if (value ~= "" and has_ssl ) or value == "" then return value end
return nil, err_tab_adv(self) .. translate("Binding to a specific network not supported") .. " !"
end
+ function bnet.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+ end
end
--- IPv4 + IPv6 - force_ipversion (NEW) -- ######################################
+-- IPv4 + IPv6 - force_ipversion -- ###########################################
-- optional to force wget/curl and host to use only selected IP version
-- command parameter "-4" or "-6"
if has_force or ( ( m:get(section, "force_ipversion") or "0" ) ~= "0" ) then
@@ -908,19 +1148,9 @@ if has_force or ( ( m:get(section, "force_ipversion") or "0" ) ~= "0" ) then
if (value == "1" and has_force) or value == "0" then return value end
return nil, err_tab_adv(self) .. translate("Force IP Version not supported")
end
- function fipv.parse(self, section)
- DDNS.flag_parse(self, section)
- end
- function fipv.write(self, section, value)
- if value == "1" then
- return self.map:set(section, self.option, value)
- else
- return self.map:del(section, self.option)
- end
- end
end
--- IPv4 + IPv6 - dns_server (NEW) -- ###########################################
+-- IPv4 + IPv6 - dns_server -- ################################################
-- optional DNS Server to use resolving my IP if "ip_source"="web"
dns = ns:taboption("advanced", Value, "dns_server",
translate("DNS-Server"),
@@ -929,7 +1159,7 @@ dns = ns:taboption("advanced", Value, "dns_server",
dns.placeholder = "mydns.lan"
function dns.validate(self, value)
-- if .datatype is set, then it is checked before calling this function
- if not value then
+ if not value or (#value == 0) then
return "" -- ignore on empty
elseif not DTYP.host(value) then
return nil, err_tab_adv(self) .. translate("use hostname, FQDN, IPv4- or IPv6-Address")
@@ -947,8 +1177,11 @@ function dns.validate(self, value)
end
end
end
+function dns.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- IPv4 + IPv6 - force_dnstcp (NEW) -- #########################################
+-- IPv4 + IPv6 - force_dnstcp -- ##############################################
if has_dnstcp or ( ( m:get(section, "force_dnstcp") or "0" ) ~= "0" ) then
tcp = ns:taboption("advanced", Flag, "force_dnstcp",
translate("Force TCP on DNS") )
@@ -970,12 +1203,9 @@ if has_dnstcp or ( ( m:get(section, "force_dnstcp") or "0" ) ~= "0" ) then
end
return nil, err_tab_adv(self) .. translate("DNS requests via TCP not supported")
end
- function tcp.parse(self, section)
- DDNS.flag_parse(self, section)
- end
end
--- IPv4 + IPv6 - proxy (NEW) -- ################################################
+-- IPv4 + IPv6 - proxy -- #####################################################
-- optional Proxy to use for http/https requests [user:password@]proxyhost[:port]
if has_proxy or ( ( m:get(section, "proxy") or "" ) ~= "" ) then
pxy = ns:taboption("advanced", Value, "proxy",
@@ -997,7 +1227,7 @@ if has_proxy or ( ( m:get(section, "proxy") or "" ) ~= "" ) then
end
function pxy.validate(self, value)
-- if .datatype is set, then it is checked before calling this function
- if not value then
+ if not value or (#value == 0) then
return "" -- ignore on empty
elseif has_proxy then
local ipv6 = usev6:formvalue(section) or "0"
@@ -1016,9 +1246,12 @@ if has_proxy or ( ( m:get(section, "proxy") or "" ) ~= "" ) then
return nil, err_tab_adv(self) .. translate("PROXY-Server not supported")
end
end
+ function pxy.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+ end
end
--- use_syslog -- ###############################################################
+-- use_syslog -- ##############################################################
slog = ns:taboption("advanced", ListValue, "use_syslog",
translate("Log to syslog"),
translate("Writes log messages to syslog. Critical Errors will always be written to syslog.") )
@@ -1028,26 +1261,24 @@ slog:value("1", translate("Info"))
slog:value("2", translate("Notice"))
slog:value("3", translate("Warning"))
slog:value("4", translate("Error"))
+function slog.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- use_logfile (NEW) -- ########################################################
+-- use_logfile -- #############################################################
logf = ns:taboption("advanced", Flag, "use_logfile",
translate("Log to file"),
translate("Writes detailed messages to log file. File will be truncated automatically.") .. "<br />" ..
translate("File") .. [[: "]] .. log_dir .. [[/]] .. section .. [[.log"]] )
logf.orientation = "horizontal"
-logf.rmempty = false -- we want to save in /etc/config/ddns file on "0" because
-logf.default = "1" -- if not defined write to log by default
-function logf.parse(self, section)
- DDNS.flag_parse(self, section)
-end
+logf.default = "1" -- if not defined write to log by default
--- TAB: Timer #####################################################################################
--- check_interval -- ###########################################################
+-- TAB: Timer ####################################################################################
+-- check_interval -- ##########################################################
ci = ns:taboption("timer", Value, "check_interval",
translate("Check Interval") )
ci.template = "ddns/detail_value"
-ci.default = 10
-ci.rmempty = false -- validate ourselves for translatable error messages
+ci.default = "10"
function ci.validate(self, value)
if not DTYP.uinteger(value)
or tonumber(value) < 1 then
@@ -1062,7 +1293,7 @@ function ci.validate(self, value)
end
end
function ci.write(self, section, value)
- -- simulate rmempty=true remove default
+ -- remove when default
local secs = DDNS.calc_seconds(value, cu:formvalue(section))
if secs ~= 600 then --default 10 minutes
return self.map:set(section, self.option, value)
@@ -1071,20 +1302,22 @@ function ci.write(self, section, value)
return self.map:del(section, self.option)
end
end
+function ci.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- check_unit -- ###############################################################
+-- check_unit -- ##############################################################
cu = ns:taboption("timer", ListValue, "check_unit", "not displayed, but needed otherwise error",
translate("Interval to check for changed IP" .. "<br />" ..
"Values below 5 minutes == 300 seconds are not supported") )
cu.template = "ddns/detail_lvalue"
cu.default = "minutes"
-cu.rmempty = false -- want to control write process
cu:value("seconds", translate("seconds"))
cu:value("minutes", translate("minutes"))
cu:value("hours", translate("hours"))
--cu:value("days", translate("days"))
function cu.write(self, section, value)
- -- simulate rmempty=true remove default
+ -- remove when default
local secs = DDNS.calc_seconds(ci:formvalue(section), value)
if secs ~= 600 then --default 10 minutes
return self.map:set(section, self.option, value)
@@ -1092,13 +1325,16 @@ function cu.write(self, section, value)
return true
end
end
+function cu.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- force_interval (modified) -- ################################################
+-- force_interval (modified) -- ###############################################
fi = ns:taboption("timer", Value, "force_interval",
translate("Force Interval") )
fi.template = "ddns/detail_value"
-fi.default = 72 -- see dynamic_dns_updater.sh script
-fi.rmempty = false -- validate ourselves for translatable error messages
+fi.default = "72" -- see dynamic_dns_updater.sh script
+--fi.rmempty = false -- validate ourselves for translatable error messages
function fi.validate(self, value)
if not DTYP.uinteger(value)
or tonumber(value) < 0 then
@@ -1132,15 +1368,18 @@ function fi.write(self, section, value)
return self.map:del(section, self.option)
end
end
+function fi.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- force_unit -- ###############################################################
+-- force_unit -- ##############################################################
fu = ns:taboption("timer", ListValue, "force_unit", "not displayed, but needed otherwise error",
translate("Interval to force updates send to DDNS Provider" .. "<br />" ..
"Setting this parameter to 0 will force the script to only run once" .. "<br />" ..
"Values lower 'Check Interval' except '0' are not supported") )
fu.template = "ddns/detail_lvalue"
fu.default = "hours"
-fu.rmempty = false -- want to control write process
+--fu.rmempty = false -- want to control write process
--fu:value("seconds", translate("seconds"))
fu:value("minutes", translate("minutes"))
fu:value("hours", translate("hours"))
@@ -1154,15 +1393,17 @@ function fu.write(self, section, value)
return true
end
end
+function fu.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- retry_count (NEW) -- ########################################################
+-- retry_count -- #############################################################
rc = ns:taboption("timer", Value, "retry_count")
rc.title = translate("Error Retry Counter")
rc.description = translate("On Error the script will stop execution after given number of retrys")
.. "<br />"
.. translate("The default setting of '0' will retry infinite.")
-rc.default = 0
-rc.rmempty = false -- validate ourselves for translatable error messages
+rc.default = "0"
function rc.validate(self, value)
if not DTYP.uinteger(value) then
return nil, err_tab_timer(self) .. translate("minimum value '0'")
@@ -1170,21 +1411,15 @@ function rc.validate(self, value)
return value
end
end
-function rc.write(self, section, value)
- -- simulate rmempty=true remove default
- if tonumber(value) ~= self.default then
- return self.map:set(section, self.option, value)
- else
- return self.map:del(section, self.option)
- end
+function rc.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
end
--- retry_interval -- ###########################################################
+-- retry_interval -- ##########################################################
ri = ns:taboption("timer", Value, "retry_interval",
translate("Error Retry Interval") )
ri.template = "ddns/detail_value"
-ri.default = 60
-ri.rmempty = false -- validate ourselves for translatable error messages
+ri.default = "60"
function ri.validate(self, value)
if not DTYP.uinteger(value)
or tonumber(value) < 1 then
@@ -1203,13 +1438,16 @@ function ri.write(self, section, value)
return self.map:del(section, self.option)
end
end
+function ri.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- retry_unit -- ###############################################################
+-- retry_unit -- ##############################################################
ru = ns:taboption("timer", ListValue, "retry_unit", "not displayed, but needed otherwise error",
translate("On Error the script will retry the failed action after given time") )
ru.template = "ddns/detail_lvalue"
ru.default = "seconds"
-ru.rmempty = false -- want to control write process
+--ru.rmempty = false -- want to control write process
ru:value("seconds", translate("seconds"))
ru:value("minutes", translate("minutes"))
--ru:value("hours", translate("hours"))
@@ -1223,8 +1461,11 @@ function ru.write(self, section, value)
return true -- will be deleted by retry_interval
end
end
+function ru.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
--- TAB: LogView (NEW) #############################################################################
+-- TAB: LogView ##################################################################################
lv = ns:taboption("logview", DummyValue, "_logview")
lv.template = "ddns/detail_logview"
lv.inputtitle = translate("Read / Reread log file")
diff --git a/applications/luci-app-ddns/luasrc/model/cbi/ddns/global.lua b/applications/luci-app-ddns/luasrc/model/cbi/ddns/global.lua
index fbd3cb3377..23ce4f13f7 100644
--- a/applications/luci-app-ddns/luasrc/model/cbi/ddns/global.lua
+++ b/applications/luci-app-ddns/luasrc/model/cbi/ddns/global.lua
@@ -5,19 +5,14 @@ local NX = require "nixio"
local NXFS = require "nixio.fs"
local DISP = require "luci.dispatcher"
local SYS = require "luci.sys"
+local CTRL = require "luci.controller.ddns" -- this application's controller
local DDNS = require "luci.tools.ddns" -- ddns multiused functions
-- cbi-map definition -- #######################################################
local m = Map("ddns")
-
--- first need to close <a> from cbi map template our <a> closed by template
-m.title = [[</a><a href="]] .. DISP.build_url("admin", "services", "ddns") .. [[">]]
- .. translate("Dynamic DNS")
-
-m.description = translate("Dynamic DNS allows that your router can be reached with " ..
- "a fixed hostname while having a dynamically changing IP address.")
-
-m.redirect = DISP.build_url("admin", "services", "ddns")
+m.title = CTRL.app_title_back()
+m.description = CTRL.app_description()
+m.redirect = DISP.build_url("admin", "services", "ddns")
function m.commit_handler(self)
if self.changed then -- changes ?
@@ -53,17 +48,7 @@ ali.description = translate("Non-public and by default blocked IP's") .. ":"
.. "0/8, 10/8, 100.64/10, 127/8, 169.254/16, 172.16/12, 192.168/16"
.. [[<br /><strong>IPv6: </strong>]]
.. "::/32, f000::/4"
-ali.reempty = true
ali.default = "0"
-function ali.parse(self, section)
- DDNS.flag_parse(self, section)
-end
-function ali.validate(self, value)
- if value == self.default then
- return "" -- default = empty
- end
- return value
-end
-- date_format -- #############################################################
local df = ns:option(Value, "date_format")
@@ -72,7 +57,6 @@ df.description = [[<a href="http://www.cplusplus.com/reference/ctime/strftime/"
.. translate("For supported codes look here")
.. [[</a>]]
df.template = "ddns/global_value"
-df.rmempty = true
df.default = "%F %R"
df.date_string = ""
function df.cfgvalue(self, section)
@@ -81,55 +65,45 @@ function df.cfgvalue(self, section)
self.date_string = DDNS.epoch2date(epoch, value)
return value
end
-function df.validate(self, value)
- if value == self.default then
- return "" -- default = empty
- end
- return value
+function df.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
end
-- run_dir -- #################################################################
local rd = ns:option(Value, "run_dir")
rd.title = translate("Status directory")
rd.description = translate("Directory contains PID and other status information for each running section")
-rd.rmempty = true
rd.default = "/var/run/ddns"
-function rd.validate(self, value)
- if value == self.default then
- return "" -- default = empty
- end
- return value
+-- no need to validate. if empty default is used everything else created by dns-scripts
+function rd.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
end
-- log_dir -- #################################################################
local ld = ns:option(Value, "log_dir")
ld.title = translate("Log directory")
ld.description = translate("Directory contains Log files for each running section")
-ld.rmempty = true
ld.default = "/var/log/ddns"
-function ld.validate(self, value)
- if value == self.default then
- return "" -- default = empty
- end
- return value
+-- no need to validate. if empty default is used everything else created by dns-scripts
+function ld.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
end
-- log_lines -- ###############################################################
local ll = ns:option(Value, "log_lines")
ll.title = translate("Log length")
ll.description = translate("Number of last lines stored in log files")
-ll.rmempty = true
ll.default = "250"
function ll.validate(self, value)
local n = tonumber(value)
if not n or math.floor(n) ~= n or n < 1 then
return nil, self.title .. ": " .. translate("minimum value '1'")
end
- if value == self.default then
- return "" -- default = empty
- end
return value
end
+function ll.parse(self, section, novld)
+ DDNS.value_parse(self, section, novld)
+end
-- use_curl -- ################################################################
if (SYS.call([[ grep -i "\+ssl" /usr/bin/wget >/dev/null 2>&1 ]]) == 0)
@@ -140,17 +114,7 @@ and NXFS.access("/usr/bin/curl") then
.. [[<br />]]
.. translate("To use cURL activate this option.")
pc.orientation = "horizontal"
- pc.rmempty = true
pc.default = "0"
- function pc.parse(self, section)
- DDNS.flag_parse(self, section)
- end
- function pc.validate(self, value)
- if value == self.default then
- return "" -- default = empty
- end
- return value
- end
end
return m
diff --git a/applications/luci-app-ddns/luasrc/model/cbi/ddns/hints.lua b/applications/luci-app-ddns/luasrc/model/cbi/ddns/hints.lua
index ff7aa7a41c..031bf513cf 100644
--- a/applications/luci-app-ddns/luasrc/model/cbi/ddns/hints.lua
+++ b/applications/luci-app-ddns/luasrc/model/cbi/ddns/hints.lua
@@ -1,9 +1,9 @@
-- Copyright 2014 Christian Schoenebeck <christian dot schoenebeck at gmail dot com>
-- Licensed to the public under the Apache License 2.0.
-local CTRL = require "luci.controller.ddns" -- this application's controller
local DISP = require "luci.dispatcher"
local SYS = require "luci.sys"
+local CTRL = require "luci.controller.ddns" -- this application's controller
local DDNS = require "luci.tools.ddns" -- ddns multiused functions
-- check supported options -- ##################################################
@@ -11,8 +11,6 @@ local DDNS = require "luci.tools.ddns" -- ddns multiused functions
has_ssl = DDNS.check_ssl() -- HTTPS support and --bind-network / --interface
has_proxy = DDNS.check_proxy() -- Proxy support
has_dnstcp = DDNS.check_bind_host() -- DNS TCP support
--- correct ddns-scripts version
-need_update = DDNS.ipkg_ver_compare(DDNS.ipkg_ver_installed("ddns-scripts"), "<<", CTRL.DDNS_MIN)
-- html constants
font_red = [[<font color="red">]]
@@ -22,16 +20,9 @@ bold_off = [[</strong>]]
-- cbi-map definition -- #######################################################
m = Map("ddns")
-
--- first need to close <a> from cbi map template our <a> closed by template
-m.title = [[</a><a href="]] .. DISP.build_url("admin", "services", "ddns") .. [[">]] ..
- translate("Dynamic DNS")
-
-m.description = translate("Dynamic DNS allows that your router can be reached with " ..
- "a fixed hostname while having a dynamically changing " ..
- "IP address.")
-
-m.redirect = DISP.build_url("admin", "services", "ddns")
+m.title = CTRL.app_title_back()
+m.description = CTRL.app_description()
+m.redirect = DISP.build_url("admin", "services", "ddns")
-- SimpleSection definition -- #################################################
-- show Hints to optimize installation and script usage
@@ -40,7 +31,7 @@ s = m:section( SimpleSection,
translate("Below a list of configuration tips for your system to run Dynamic DNS updates without limitations") )
-- ddns_scripts needs to be updated for full functionality
-if need_update then
+if not CTRL.service_ok() then
local dv = s:option(DummyValue, "_update_needed")
dv.titleref = DISP.build_url("admin", "system", "packages")
dv.rawhtml = true
diff --git a/applications/luci-app-ddns/luasrc/model/cbi/ddns/overview.lua b/applications/luci-app-ddns/luasrc/model/cbi/ddns/overview.lua
index 9e8df2d089..46fc0a4a29 100644
--- a/applications/luci-app-ddns/luasrc/model/cbi/ddns/overview.lua
+++ b/applications/luci-app-ddns/luasrc/model/cbi/ddns/overview.lua
@@ -2,10 +2,10 @@
-- Licensed to the public under the Apache License 2.0.
local NXFS = require "nixio.fs"
-local CTRL = require "luci.controller.ddns" -- this application's controller
local DISP = require "luci.dispatcher"
local HTTP = require "luci.http"
local SYS = require "luci.sys"
+local CTRL = require "luci.controller.ddns" -- this application's controller
local DDNS = require "luci.tools.ddns" -- ddns multiused functions
-- show hints ?
@@ -15,7 +15,7 @@ show_hints = not (DDNS.check_ipv6() -- IPv6 support
and DDNS.check_bind_host() -- DNS TCP support
)
-- correct ddns-scripts version
-need_update = DDNS.ipkg_ver_compare(DDNS.ipkg_ver_installed("ddns-scripts"), "<<", CTRL.DDNS_MIN)
+need_update = not CTRL.service_ok()
-- html constants
font_red = [[<font color="red">]]
@@ -25,23 +25,8 @@ bold_off = [[</strong>]]
-- cbi-map definition -- #######################################################
m = Map("ddns")
-
--- first need to close <a> from cbi map template our <a> closed by template
-m.title = [[</a><a href="javascript:alert(']]
- .. translate("Version Information")
- .. [[\n\nluci-app-ddns]]
- .. [[\n\t]] .. translate("Version") .. [[:\t]] .. DDNS.ipkg_ver_installed("luci-app-ddns")
- .. [[\n\nddns-scripts ]] .. translate("required") .. [[:]]
- .. [[\n\t]] .. translate("Version") .. [[:\t]] .. CTRL.DDNS_MIN .. [[ ]] .. translate("or higher")
- .. [[\n\nddns-scripts ]] .. translate("installed") .. [[:]]
- .. [[\n\t]] .. translate("Version") .. [[:\t]] .. DDNS.ipkg_ver_installed("ddns-scripts")
- .. [[\n\n]]
- .. [[')">]]
- .. translate("Dynamic DNS")
-
-m.description = translate("Dynamic DNS allows that your router can be reached with " ..
- "a fixed hostname while having a dynamically changing " ..
- "IP address.")
+m.title = CTRL.app_title_main()
+m.description = CTRL.app_description()
m.on_after_commit = function(self)
if self.changed then -- changes ?
@@ -123,21 +108,21 @@ function ts.create(self, name)
HTTP.redirect( self.extedit:format(name) )
end
--- Domain and registered IP -- #################################################
-dom = ts:option(DummyValue, "_domainIP",
- translate("Hostname/Domain") .. "<br />" .. translate("Registered IP") )
+-- Lookup_Host and registered IP -- #################################################
+dom = ts:option(DummyValue, "_lookupIP",
+ translate("Lookup Hostname") .. "<br />" .. translate("Registered IP") )
dom.template = "ddns/overview_doubleline"
function dom.set_one(self, section)
- local domain = self.map:get(section, "domain") or ""
- if domain ~= "" then
- return domain
+ local lookup = self.map:get(section, "lookup_host") or ""
+ if lookup ~= "" then
+ return lookup
else
return [[<em>]] .. translate("config error") .. [[</em>]]
end
end
function dom.set_two(self, section)
- local domain = self.map:get(section, "domain") or ""
- if domain == "" then return "" end
+ local lookup = self.map:get(section, "lookup_host") or ""
+ if lookup == "" then return "" end
local dnsserver = self.map:get(section, "dnsserver") or ""
local use_ipv6 = tonumber(self.map:get(section, "use_ipv6") or 0)
local force_ipversion = tonumber(self.map:get(section, "force_ipversion") or 0)
@@ -146,7 +131,7 @@ function dom.set_two(self, section)
if not NXFS.access(command, "rwx", "rx", "rx") then
NXFS.chmod(command, 755)
end
- command = command .. [[ get_registered_ip ]] .. domain .. [[ ]] .. use_ipv6 ..
+ command = command .. [[ get_registered_ip ]] .. lookup .. [[ ]] .. use_ipv6 ..
[[ ]] .. force_ipversion .. [[ ]] .. force_dnstcp .. [[ ]] .. dnsserver
local ip = SYS.exec(command)
if ip == "" then ip = translate("no data") end
@@ -158,9 +143,6 @@ ena = ts:option( Flag, "enabled",
translate("Enabled"))
ena.template = "ddns/overview_enabled"
ena.rmempty = false
-function ena.parse(self, section)
- DDNS.flag_parse(self, section)
-end
-- show PID and next update
upd = ts:option( DummyValue, "_update",
diff --git a/applications/luci-app-ddns/luasrc/tools/ddns.lua b/applications/luci-app-ddns/luasrc/tools/ddns.lua
index 4466063cb3..ecc4131364 100644
--- a/applications/luci-app-ddns/luasrc/tools/ddns.lua
+++ b/applications/luci-app-ddns/luasrc/tools/ddns.lua
@@ -96,58 +96,6 @@ function get_pid(section)
return pid
end
--- compare versions using "<=" "<" ">" ">=" "=" "<<" ">>"
-function ipkg_ver_compare(ver1, comp, ver2)
- if not ver1 or not ver2
- or not comp or not (#comp > 0) then return nil end
- -- correct compare string
- if comp == "<>" or comp == "><" or comp == "!=" or comp == "~=" then comp = "~="
- elseif comp == "<=" or comp == "<" or comp == "=<" then comp = "<="
- elseif comp == ">=" or comp == ">" or comp == "=>" then comp = ">="
- elseif comp == "=" or comp == "==" then comp = "=="
- elseif comp == "<<" then comp = "<"
- elseif comp == ">>" then comp = ">"
- else return nil end
-
- local av1 = UTIL.split(ver1, "[%.%-]", nil, true)
- local av2 = UTIL.split(ver2, "[%.%-]", nil, true)
-
- for i = 1, math.max(table.getn(av1),table.getn(av2)), 1 do
- local s1 = av1[i] or ""
- local s2 = av2[i] or ""
-
- -- first "not equal" found return true
- if comp == "~=" and (s1 ~= s2) then return true end
- -- first "lower" found return true
- if (comp == "<" or comp == "<=") and (s1 < s2) then return true end
- -- first "greater" found return true
- if (comp == ">" or comp == ">=") and (s1 > s2) then return true end
- -- not equal then return false
- if (s1 ~= s2) then return false end
- end
-
- -- all equal and not compare greater or lower then true
- return not (comp == "<" or comp == ">")
-end
-
--- read version information for given package if installed
-function ipkg_ver_installed(pkg)
- local version = nil
- local control = io.open("/usr/lib/opkg/info/%s.control" % pkg, "r")
- if control then
- local ln
- repeat
- ln = control:read("*l")
- if ln and ln:match("^Version: ") then
- version = ln:gsub("^Version: ", "")
- break
- end
- until not ln
- control:close()
- end
- return version
-end
-
-- replacement of build-in read of UCI option
-- modified AbstractValue.cfgvalue(self, section) from cbi.lua
-- needed to read from other option then current value definition
@@ -172,24 +120,77 @@ function read_value(self, section, option)
end
end
--- replacement of build-in Flag.parse of cbi.lua
--- modified to mark section as changed if value changes
--- current parse did not do this, but it is done AbstaractValue.parse()
-function flag_parse(self, section)
- local fexists = self.map:formvalue(
- luci.cbi.FEXIST_PREFIX .. self.config .. "." .. section .. "." .. self.option)
+-- replacement of build-in parse of "Value"
+-- modified AbstractValue.parse(self, section, novld) from cbi.lua
+-- validate is called if rmempty/optional true or false
+-- before write check if forcewrite, value eq default, and more
+function value_parse(self, section, novld)
+ local fvalue = self:formvalue(section)
+ local fexist = ( fvalue and (#fvalue > 0) ) -- not "nil" and "not empty"
+ local cvalue = self:cfgvalue(section)
+ local rm_opt = ( self.rmempty or self.optional )
+ local eq_cfg -- flag: equal cfgvalue
- if fexists then
- local fvalue = self:formvalue(section) and self.enabled or self.disabled
- local cvalue = self:cfgvalue(section)
- if fvalue ~= self.default or (not self.optional and not self.rmempty) then
- self:write(section, fvalue)
- else
- self:remove(section)
+ -- If favlue and cvalue are both tables and have the same content
+ -- make them identical
+ if type(fvalue) == "table" and type(cvalue) == "table" then
+ eq_cfg = (#fvalue == #cvalue)
+ if eq_cfg then
+ for i=1, #fvalue do
+ if cvalue[i] ~= fvalue[i] then
+ eq_cfg = false
+ end
+ end
end
- if (fvalue ~= cvalue) then self.section.changed = true end
- else
- self:remove(section)
+ if eq_cfg then
+ fvalue = cvalue
+ end
+ end
+
+ -- removed parameter "section" from function call because used/accepted nowhere
+ -- also removed call to function "transfer"
+ local vvalue, errtxt = self:validate(fvalue)
+
+ -- error handling; validate return "nil"
+ if not vvalue then
+ if novld then -- and "novld" set
+ return -- then exit without raising an error
+ end
+
+ if fexist then -- and there is a formvalue
+ self:add_error(section, "invalid", errtxt)
+ return -- so data are invalid
+
+ elseif not rm_opt then -- and empty formvalue but NOT (rmempty or optional) set
+ self:add_error(section, "missing", errtxt)
+ return -- so data is missing
+ end
+ end
+ -- for whatever reason errtxt set and not handled above
+ assert( not (errtxt and (#errtxt > 0)), "unhandled validate error" )
+
+ -- lets continue with value returned from validate
+ eq_cfg = ( vvalue == cvalue ) -- update equal_config flag
+ local vexist = ( vvalue and (#vvalue > 0) ) -- not "nil" and "not empty"
+ local eq_def = ( vvalue == self.default ) -- equal_default flag
+
+ -- not forcewrite and (rmempty or optional)
+ -- and (no data or equal_default)
+ if not self.forcewrite and rm_opt
+ and (not vexist or eq_def) then
+ if self:remove(section) then -- remove data from UCI
+ self.section.changed = true -- and push events
+ end
+ return
+ end
+
+ -- not forcewrite and no changes, so nothing to write
+ if not self.forcewrite and eq_cfg then
+ return
+ end
+
+ -- write data to UCI; raise event only on changes
+ if self:write(section, vvalue) and not eq_cfg then
self.section.changed = true
end
end
diff --git a/applications/luci-app-ddns/luasrc/view/ddns/detail_logview.htm b/applications/luci-app-ddns/luasrc/view/ddns/detail_logview.htm
index 494b7435cd..fd1d5be268 100644
--- a/applications/luci-app-ddns/luasrc/view/ddns/detail_logview.htm
+++ b/applications/luci-app-ddns/luasrc/view/ddns/detail_logview.htm
@@ -6,7 +6,7 @@
var txt = document.getElementById("cbid.ddns." + section + "._logview.txt"); // TextArea
if ( !txt ) { return; } // security check
- XHR.get('<%=luci.dispatcher.build_url("admin", "services", "ddns", "logview")%>/' + section, null,
+ XHR.get('<%=url([[admin]], [[services]], [[ddns]], [[logview]])%>/' + section, null,
function(x) {
if (x.responseText == "_nodata_")
txt.value = "<%:File not found or empty%>";
diff --git a/applications/luci-app-ddns/luasrc/view/ddns/overview_status.htm b/applications/luci-app-ddns/luasrc/view/ddns/overview_status.htm
index ea8e4a1e31..b409ed0728 100644
--- a/applications/luci-app-ddns/luasrc/view/ddns/overview_status.htm
+++ b/applications/luci-app-ddns/luasrc/view/ddns/overview_status.htm
@@ -19,7 +19,7 @@
var section = data[i].section // Section to handle
var cbx = document.getElementById("cbid.ddns." + section + ".enabled"); // Enabled
var btn = document.getElementById("cbid.ddns." + section + "._startstop"); // Start/Stop button
- var rip = document.getElementById("cbid.ddns." + section + "._domainIP.two"); // Registered IP
+ var rip = document.getElementById("cbid.ddns." + section + "._lookupIP.two"); // Registered IP
var lup = document.getElementById("cbid.ddns." + section + "._update.one"); // Last Update
var nup = document.getElementById("cbid.ddns." + section + "._update.two"); // Next Update
if ( !(cbx && btn && rip && lup && nup) ) { return; } // security check
@@ -76,12 +76,12 @@
break;
}
- // domain
- // (data[i].domain ignored here
+ // lookup
+ // (data[i].lookup ignored here
// registered IP
// rip.innerHTML = "Registered IP";
- if (data[i].domain == "_nodomain_")
+ if (data[i].lookup == "_nolookup_")
rip.innerHTML = '';
else if (data[i].reg_ip == "_nodata_")
rip.innerHTML = '<em><%:No data%></em>';
@@ -136,7 +136,7 @@
// do start/stop
var btnXHR = new XHR();
- btnXHR.get('<%=luci.dispatcher.build_url("admin", "services", "ddns", "startstop")%>/' + section + '/' + cbx.checked, null,
+ btnXHR.post('<%=url([[admin]], [[services]], [[ddns]], [[startstop]])%>/' + section + '/' + cbx.checked, { token: '<%=token%>' },
function(x, data) {
if (x.responseText == "_uncommitted_") {
// we need a trick to display Ampersand "&" in stead of "&#38;" or "&amp;"
@@ -155,7 +155,7 @@
}
// force to immediate show status on page load (not waiting for XHR.poll)
- XHR.get('<%=luci.dispatcher.build_url("admin", "services", "ddns", "status")%>', null,
+ XHR.get('<%=url([[admin]], [[services]], [[ddns]], [[status]])%>', null,
function(x, data) {
if (data) { _data2elements(data); }
}
@@ -164,7 +164,7 @@
// define only ONE XHR.poll in a page because if one is running it blocks the other one
// optimum is to define on Map or Section Level from here you can reach all elements
// we need update every 15 seconds only
- XHR.poll(15, '<%=luci.dispatcher.build_url("admin", "services", "ddns", "status")%>', null,
+ XHR.poll(5, '<%=url([[admin]], [[services]], [[ddns]], [[status]])%>', null,
function(x, data) {
if (data) { _data2elements(data); }
}
diff --git a/applications/luci-app-ddns/luasrc/view/ddns/system_status.htm b/applications/luci-app-ddns/luasrc/view/ddns/system_status.htm
index 4ca0abb0e5..5bdcb03e73 100644
--- a/applications/luci-app-ddns/luasrc/view/ddns/system_status.htm
+++ b/applications/luci-app-ddns/luasrc/view/ddns/system_status.htm
@@ -69,15 +69,15 @@
break;
}
- // domain
- if (data[j].domain == "_nodomain_")
+ // lookup
+ if (data[j].lookup == "_nolookup_")
tr.insertCell(-1).innerHTML = '<em><%:config error%></em>';
else
- tr.insertCell(-1).innerHTML = data[j].domain;
+ tr.insertCell(-1).innerHTML = data[j].lookup;
// registered IP
switch (data[j].reg_ip) {
- case "_nodomain_":
+ case "_nolookup_":
tr.insertCell(-1).innerHTML = '<em><%:Config error%></em>';
break;
case "_nodata_":
@@ -111,13 +111,13 @@
}
// force to immediate show status (not waiting for XHR.poll)
- XHR.get('<%=luci.dispatcher.build_url("admin", "services", "ddns", "status")%>', null,
+ XHR.get('<%=url([[admin]], [[services]], [[ddns]], [[status]])%>', null,
function(x, data) {
if (data) { _data2elements(x, data); }
}
);
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "services", "ddns", "status")%>', null,
+ XHR.poll(15, '<%=url([[admin]], [[services]], [[ddns]], [[status]])%>', null,
function(x, data) {
if (data) { _data2elements(x, data); }
}
@@ -126,13 +126,13 @@
//]]></script>
<fieldset class="cbi-section" id="ddns_status_section">
- <legend><a href="<%=luci.dispatcher.build_url([[admin]], [[services]], [[ddns]])%>"><%:Dynamic DNS%></a></legend>
+ <legend><a href="<%=url([[admin]], [[services]], [[ddns]])%>"><%:Dynamic DNS%></a></legend>
<table class="cbi-section-table" id="ddns_status_table">
<tr class="cbi-section-table-titles">
<th class="cbi-section-table-cell"><%:Configuration%></th>
<th class="cbi-section-table-cell"><%:Next Update%></th>
- <th class="cbi-section-table-cell"><%:Hostname/Domain%></th>
+ <th class="cbi-section-table-cell"><%:Lookup Hostname%></th>
<th class="cbi-section-table-cell"><%:Registered IP%></th>
<th class="cbi-section-table-cell"><%:Network%></th>
</tr>
diff --git a/applications/luci-app-ddns/po/ca/ddns.po b/applications/luci-app-ddns/po/ca/ddns.po
index 35f13eba5d..c57b68938f 100644
--- a/applications/luci-app-ddns/po/ca/ddns.po
+++ b/applications/luci-app-ddns/po/ca/ddns.po
@@ -462,6 +462,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/cs/ddns.po b/applications/luci-app-ddns/po/cs/ddns.po
index 455c72a6aa..e957d58abb 100644
--- a/applications/luci-app-ddns/po/cs/ddns.po
+++ b/applications/luci-app-ddns/po/cs/ddns.po
@@ -460,6 +460,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/de/ddns.po b/applications/luci-app-ddns/po/de/ddns.po
index 6ffde5d547..e662adc780 100644
--- a/applications/luci-app-ddns/po/de/ddns.po
+++ b/applications/luci-app-ddns/po/de/ddns.po
@@ -1,15 +1,15 @@
msgid ""
msgstr ""
"Project-Id-Version: luci-app-ddns\n"
-"POT-Creation-Date: 2015-05-08 21:29+0100\n"
-"PO-Revision-Date: 2015-05-08 21:47+0100\n"
+"POT-Creation-Date: 2015-11-04 19:10-0100\n"
+"PO-Revision-Date: 2015-11-14 18:31+0100\n"
"Last-Translator: Christian Schoenebeck <christian.schoenebeck@gmail.com>\n"
"Language-Team: \n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 1.7.5\n"
+"X-Generator: Poedit 1.8.6\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Poedit-Basepath: .\n"
@@ -70,6 +70,9 @@ msgstr ""
msgid "Casual users should not change this setting"
msgstr "Standard Benutzer sollten diese Einstellung nicht ändern."
+msgid "Change provider"
+msgstr "Anbieter wechseln"
+
msgid "Check Interval"
msgstr "Prüfinterval"
@@ -125,6 +128,12 @@ msgstr "Eigenes Update-Skript"
msgid "DDNS Autostart disabled"
msgstr "DDNS Autostart deaktiviert"
+msgid "DDNS Client Configuration"
+msgstr "DDNS Client Konfiguration"
+
+msgid "DDNS Client Documentation"
+msgstr "DDNS Client Dokumentation"
+
msgid "DDNS Service provider"
msgstr "DDNS-Dienstanbieter"
@@ -196,6 +205,9 @@ msgstr ""
msgid "Disabled"
msgstr "Deaktiviert"
+msgid "Domain"
+msgstr "Domäne"
+
msgid "Dynamic DNS"
msgstr "Dynamisches DNS"
@@ -284,8 +296,10 @@ msgstr "HTTPS nicht unterstützt"
msgid "Hints"
msgstr "Hinweise"
-msgid "Hostname/Domain"
-msgstr "Rechnername/Domäne"
+msgid "Hostname/FQDN to validate, if IP update happen or necessary"
+msgstr ""
+"Hostname/FQDN um zu überprüfen, ob eine Aktualisierung stattgefunden hat "
+"oder notwendig ist"
msgid "IP address source"
msgstr "IP-Adressquelle"
@@ -385,6 +399,12 @@ msgstr "Protokoll in Datei schreiben"
msgid "Log to syslog"
msgstr "Systemprotokoll verwenden"
+msgid "Lookup Hostname"
+msgstr "Nachschlage-Hostname"
+
+msgid "NOT installed"
+msgstr "NICHT installiert"
+
msgid ""
"Neither GNU Wget with SSL nor cURL installed to select a network to use for "
"communication."
@@ -454,6 +474,21 @@ msgstr ""
msgid "On Error the script will stop execution after given number of retrys"
msgstr "Das Skript wird nach der gegebenen Anzahl von Fehlversuchen beendet."
+msgid "OpenWrt Wiki"
+msgstr "OpenWrt Wiki"
+
+msgid "Optional Encoded Parameter"
+msgstr "Optionaler codierten Parameter"
+
+msgid "Optional Parameter"
+msgstr "Optionaler Parameter"
+
+msgid "Optional: Replaces [PARAMENC] in Update-URL (URL-encoded)"
+msgstr "Optional: Ersetzt [PARAMENC] in der Update-URL (URL-codiert)"
+
+msgid "Optional: Replaces [PARAMOPT] in Update-URL (NOT URL-encoded)"
+msgstr "Optional: Ersetzt [PARAMENC] in der Update-URL (NICHT URL-codiert)"
+
msgid "Overview"
msgstr "Übersicht"
@@ -484,17 +519,20 @@ msgstr "Prozess ID"
msgid "Read / Reread log file"
msgstr "Protokolldatei (neu) einlesen"
+msgid "Really change DDNS provider?"
+msgstr "Wirklich DDNS-Anbieter wechseln?"
+
msgid "Registered IP"
msgstr "Registrierte IP"
msgid "Replaces [DOMAIN] in Update-URL"
msgstr "Ersetzt [DOMAIN] in der Update-URL"
-msgid "Replaces [PASSWORD] in Update-URL"
-msgstr "Ersetzt [PASSWORD] in der Update-URL"
+msgid "Replaces [PASSWORD] in Update-URL (URL-encoded)"
+msgstr "Ersetzt [PASSWORD] in der Update-URL (URL-codiert)"
-msgid "Replaces [USERNAME] in Update-URL"
-msgstr "Ersetzt [USERNAME] in der Update-URL"
+msgid "Replaces [USERNAME] in Update-URL (URL-encoded)"
+msgstr "Ersetzt [USERNAME] in der Update-URL (URL-codiert)"
msgid "Run once"
msgstr "Einmalig ausführen"
@@ -528,7 +566,7 @@ msgstr ""
"Optionen."
msgid "The default setting of '0' will retry infinite."
-msgstr "Der Standard-Wert von '0' wird es endlosen erneut versuchen."
+msgstr "Beim Standard-Wert von '0' wird es endlos erneut versucht."
msgid "There is no service configured."
msgstr "Kein Dienst konfiguriert"
@@ -661,8 +699,8 @@ msgstr "Stunden"
msgid "installed"
msgstr "installiert"
-msgid "invalid - Sample"
-msgstr "ungültig - Beispiel"
+msgid "invalid FQDN / required - Sample"
+msgstr "ungültige FQDN / Pflichtfeld - Beispiel"
msgid "minimum value '0'"
msgstr "Minimum Wert '0'"
diff --git a/applications/luci-app-ddns/po/el/ddns.po b/applications/luci-app-ddns/po/el/ddns.po
index edbe19d146..821e17e655 100644
--- a/applications/luci-app-ddns/po/el/ddns.po
+++ b/applications/luci-app-ddns/po/el/ddns.po
@@ -459,6 +459,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/en/ddns.po b/applications/luci-app-ddns/po/en/ddns.po
index b706fa29e9..a6ba0bb127 100644
--- a/applications/luci-app-ddns/po/en/ddns.po
+++ b/applications/luci-app-ddns/po/en/ddns.po
@@ -457,6 +457,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/es/ddns.po b/applications/luci-app-ddns/po/es/ddns.po
index 1948155d28..ebee43d74f 100644
--- a/applications/luci-app-ddns/po/es/ddns.po
+++ b/applications/luci-app-ddns/po/es/ddns.po
@@ -458,6 +458,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/fr/ddns.po b/applications/luci-app-ddns/po/fr/ddns.po
index 94b61b6954..84e86a9646 100644
--- a/applications/luci-app-ddns/po/fr/ddns.po
+++ b/applications/luci-app-ddns/po/fr/ddns.po
@@ -458,6 +458,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/he/ddns.po b/applications/luci-app-ddns/po/he/ddns.po
index a6d20303bc..45f5a6db9c 100644
--- a/applications/luci-app-ddns/po/he/ddns.po
+++ b/applications/luci-app-ddns/po/he/ddns.po
@@ -461,6 +461,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/hu/ddns.po b/applications/luci-app-ddns/po/hu/ddns.po
index fdd9a17a86..20388d3ea6 100644
--- a/applications/luci-app-ddns/po/hu/ddns.po
+++ b/applications/luci-app-ddns/po/hu/ddns.po
@@ -460,6 +460,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/it/ddns.po b/applications/luci-app-ddns/po/it/ddns.po
index 48e6809120..77ebfb727f 100644
--- a/applications/luci-app-ddns/po/it/ddns.po
+++ b/applications/luci-app-ddns/po/it/ddns.po
@@ -458,6 +458,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/ja/ddns.po b/applications/luci-app-ddns/po/ja/ddns.po
index 488bac9906..1b608aa222 100644
--- a/applications/luci-app-ddns/po/ja/ddns.po
+++ b/applications/luci-app-ddns/po/ja/ddns.po
@@ -458,6 +458,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/ms/ddns.po b/applications/luci-app-ddns/po/ms/ddns.po
index 5b7f0dea6b..ea11b9e354 100644
--- a/applications/luci-app-ddns/po/ms/ddns.po
+++ b/applications/luci-app-ddns/po/ms/ddns.po
@@ -456,6 +456,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/no/ddns.po b/applications/luci-app-ddns/po/no/ddns.po
index b805aa4f80..80374ee7cf 100644
--- a/applications/luci-app-ddns/po/no/ddns.po
+++ b/applications/luci-app-ddns/po/no/ddns.po
@@ -449,6 +449,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/pl/ddns.po b/applications/luci-app-ddns/po/pl/ddns.po
index e016cc4a43..9907b1e644 100644
--- a/applications/luci-app-ddns/po/pl/ddns.po
+++ b/applications/luci-app-ddns/po/pl/ddns.po
@@ -459,6 +459,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/pt-br/ddns.po b/applications/luci-app-ddns/po/pt-br/ddns.po
index df2fff538e..5dd243fe66 100644
--- a/applications/luci-app-ddns/po/pt-br/ddns.po
+++ b/applications/luci-app-ddns/po/pt-br/ddns.po
@@ -458,6 +458,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/pt/ddns.po b/applications/luci-app-ddns/po/pt/ddns.po
index 57654928d8..a788ad257b 100644
--- a/applications/luci-app-ddns/po/pt/ddns.po
+++ b/applications/luci-app-ddns/po/pt/ddns.po
@@ -460,6 +460,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/ro/ddns.po b/applications/luci-app-ddns/po/ro/ddns.po
index 78c39d5e94..f32c6e98cf 100644
--- a/applications/luci-app-ddns/po/ro/ddns.po
+++ b/applications/luci-app-ddns/po/ro/ddns.po
@@ -461,6 +461,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/ru/ddns.po b/applications/luci-app-ddns/po/ru/ddns.po
index d4c0eb4a88..e76cda60c5 100644
--- a/applications/luci-app-ddns/po/ru/ddns.po
+++ b/applications/luci-app-ddns/po/ru/ddns.po
@@ -460,6 +460,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/sk/ddns.po b/applications/luci-app-ddns/po/sk/ddns.po
index 3cd0f4c2c6..45e6632f0a 100644
--- a/applications/luci-app-ddns/po/sk/ddns.po
+++ b/applications/luci-app-ddns/po/sk/ddns.po
@@ -451,6 +451,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/sv/ddns.po b/applications/luci-app-ddns/po/sv/ddns.po
index cee36e7254..c3b7c56e24 100644
--- a/applications/luci-app-ddns/po/sv/ddns.po
+++ b/applications/luci-app-ddns/po/sv/ddns.po
@@ -452,6 +452,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/templates/ddns.pot b/applications/luci-app-ddns/po/templates/ddns.pot
index 35386802bf..7ab51dd93a 100644
--- a/applications/luci-app-ddns/po/templates/ddns.pot
+++ b/applications/luci-app-ddns/po/templates/ddns.pot
@@ -50,6 +50,9 @@ msgstr ""
msgid "Casual users should not change this setting"
msgstr ""
+msgid "Change provider"
+msgstr ""
+
msgid "Check Interval"
msgstr ""
@@ -96,6 +99,12 @@ msgstr ""
msgid "DDNS Autostart disabled"
msgstr ""
+msgid "DDNS Client Configuration"
+msgstr ""
+
+msgid "DDNS Client Documentation"
+msgstr ""
+
msgid "DDNS Service provider"
msgstr ""
@@ -149,6 +158,9 @@ msgstr ""
msgid "Disabled"
msgstr ""
+msgid "Domain"
+msgstr ""
+
msgid "Dynamic DNS"
msgstr ""
@@ -230,7 +242,7 @@ msgstr ""
msgid "Hints"
msgstr ""
-msgid "Hostname/Domain"
+msgid "Hostname/FQDN to validate, if IP update happen or necessary"
msgstr ""
msgid "IP address source"
@@ -315,6 +327,12 @@ msgstr ""
msgid "Log to syslog"
msgstr ""
+msgid "Lookup Hostname"
+msgstr ""
+
+msgid "NOT installed"
+msgstr ""
+
msgid ""
"Neither GNU Wget with SSL nor cURL installed to select a network to use for "
"communication."
@@ -373,6 +391,21 @@ msgstr ""
msgid "On Error the script will stop execution after given number of retrys"
msgstr ""
+msgid "OpenWrt Wiki"
+msgstr ""
+
+msgid "Optional Encoded Parameter"
+msgstr ""
+
+msgid "Optional Parameter"
+msgstr ""
+
+msgid "Optional: Replaces [PARAMENC] in Update-URL (URL-encoded)"
+msgstr ""
+
+msgid "Optional: Replaces [PARAMOPT] in Update-URL (NOT URL-encoded)"
+msgstr ""
+
msgid "Overview"
msgstr ""
@@ -403,16 +436,19 @@ msgstr ""
msgid "Read / Reread log file"
msgstr ""
+msgid "Really change DDNS provider?"
+msgstr ""
+
msgid "Registered IP"
msgstr ""
msgid "Replaces [DOMAIN] in Update-URL"
msgstr ""
-msgid "Replaces [PASSWORD] in Update-URL"
+msgid "Replaces [PASSWORD] in Update-URL (URL-encoded)"
msgstr ""
-msgid "Replaces [USERNAME] in Update-URL"
+msgid "Replaces [USERNAME] in Update-URL (URL-encoded)"
msgstr ""
msgid "Run once"
@@ -563,7 +599,7 @@ msgstr ""
msgid "installed"
msgstr ""
-msgid "invalid - Sample"
+msgid "invalid FQDN / required - Sample"
msgstr ""
msgid "minimum value '0'"
diff --git a/applications/luci-app-ddns/po/tr/ddns.po b/applications/luci-app-ddns/po/tr/ddns.po
index 10492bccc6..74be14ab20 100644
--- a/applications/luci-app-ddns/po/tr/ddns.po
+++ b/applications/luci-app-ddns/po/tr/ddns.po
@@ -458,6 +458,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/uk/ddns.po b/applications/luci-app-ddns/po/uk/ddns.po
index 0e2c5804a0..58ded215e6 100644
--- a/applications/luci-app-ddns/po/uk/ddns.po
+++ b/applications/luci-app-ddns/po/uk/ddns.po
@@ -461,6 +461,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/vi/ddns.po b/applications/luci-app-ddns/po/vi/ddns.po
index 5d5a7ede70..4b0cc91fd9 100644
--- a/applications/luci-app-ddns/po/vi/ddns.po
+++ b/applications/luci-app-ddns/po/vi/ddns.po
@@ -461,6 +461,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-ddns/po/zh-cn/ddns.po b/applications/luci-app-ddns/po/zh-cn/ddns.po
index 862c2a052a..381e6684e8 100644
--- a/applications/luci-app-ddns/po/zh-cn/ddns.po
+++ b/applications/luci-app-ddns/po/zh-cn/ddns.po
@@ -12,6 +12,9 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Poedit 1.7.5\n"
+msgid "&"
+msgstr ""
+
msgid "-- custom --"
msgstr "-- 自定义 --"
@@ -30,10 +33,13 @@ msgstr "正在应用更改"
msgid "Basic Settings"
msgstr "基础设置"
-msgid "Below a list of configuration tips for your system to run Dynamic DNS updates without limitations"
+msgid ""
+"Below a list of configuration tips for your system to run Dynamic DNS "
+"updates without limitations"
msgstr "以下是一个能够让你的系统不受限制地进行动态DNS更新的设置贴士."
-msgid "Below is a list of configured DDNS configurations and their current state."
+msgid ""
+"Below is a list of configured DDNS configurations and their current state."
msgstr "一下是当前已经配置好的DDNS设置项列表以及它们的当前状态."
msgid "Bind Network"
@@ -42,10 +48,14 @@ msgstr "使用的接口"
msgid "Binding to a specific network not supported"
msgstr "不支持绑定到一个指定的网络"
-msgid "BusyBox's nslookup and Wget do not support to specify the IP version to use for communication with DDNS Provider."
+msgid ""
+"BusyBox's nslookup and Wget do not support to specify the IP version to use "
+"for communication with DDNS Provider."
msgstr "与DDNS供应商通讯时BusyBox的nslookup和Wget不支持设置特定的IP协议版本."
-msgid "BusyBox's nslookup does not support to specify to use TCP instead of default UDP when requesting DNS server"
+msgid ""
+"BusyBox's nslookup does not support to specify to use TCP instead of default "
+"UDP when requesting DNS server"
msgstr "BusyBox的nslookup不支持使用TCP协议代替UDP协议请求DNS记录"
msgid "Casual users should not change this setting"
@@ -63,7 +73,9 @@ msgstr "配置错误"
msgid "Configuration"
msgstr "设置"
-msgid "Configure here the details for all Dynamic DNS services including this LuCI application."
+msgid ""
+"Configure here the details for all Dynamic DNS services including this LuCI "
+"application."
msgstr "在这里修改动态DNS服务的详细配置"
msgid "Configure here the details for selected Dynamic DNS service."
@@ -72,11 +84,20 @@ msgstr "在这里修改选择的DDNS服务的详细配置"
msgid "Current setting"
msgstr "当前设置"
-msgid "Currently DDNS updates are not started at boot or on interface events.<br />This is the default if you run DDNS scripts by yourself (i.e. via cron with force_interval set to '0')"
-msgstr "现在,DDNS更新在开机或者接口动作时不会被触发<br />如果你手工运行DDNS脚本的话(例如使用cron时把force_interval设置为0),这是默认设置."
+msgid ""
+"Currently DDNS updates are not started at boot or on interface events.<br /"
+">This is the default if you run DDNS scripts by yourself (i.e. via cron with "
+"force_interval set to '0')"
+msgstr ""
+"现在,DDNS更新在开机或者接口动作时不会被触发<br />如果你手工运行DDNS脚本的话"
+"(例如使用cron时把force_interval设置为0),这是默认设置."
-msgid "Currently DDNS updates are not started at boot or on interface events.<br />You can start/stop each configuration here. It will run until next reboot."
-msgstr "现在,DDNS更新在开机或者接口动作时不会被触发<br />你可以在这里开始/停止每一个设置的条目.它在下次重启之前一直有效."
+msgid ""
+"Currently DDNS updates are not started at boot or on interface events.<br /"
+">You can start/stop each configuration here. It will run until next reboot."
+msgstr ""
+"现在,DDNS更新在开机或者接口动作时不会被触发<br />你可以在这里开始/停止每一个"
+"设置的条目.它在下次重启之前一直有效."
msgid "Custom update script to be used for updating your DDNS Provider."
msgstr "用来更新动态DNS的自定义脚本"
@@ -117,10 +138,14 @@ msgstr "设定用来读取系统IPv4地址的网络"
msgid "Defines the network to read systems IPv6-Address from"
msgstr "设定用来读取系统IPv6地址的网络"
-msgid "Defines the source to read systems IPv4-Address from, that will be send to the DDNS provider"
+msgid ""
+"Defines the source to read systems IPv4-Address from, that will be send to "
+"the DDNS provider"
msgstr "设定IPv4地址的来源.这将会被发送给DDNS提供商"
-msgid "Defines the source to read systems IPv6-Address from, that will be send to the DDNS provider"
+msgid ""
+"Defines the source to read systems IPv6-Address from, that will be send to "
+"the DDNS provider"
msgstr "设定IPv6地址的来源.这将会被发送给DDNS提供商"
msgid "Defines which IP address 'IPv4/IPv6' is send to the DDNS provider"
@@ -132,7 +157,8 @@ msgstr "详情:"
msgid "Directory contains Log files for each running section"
msgstr "保存每一个运行中的设置的运行日志的目录"
-msgid "Directory contains PID and other status information for each running section"
+msgid ""
+"Directory contains PID and other status information for each running section"
msgstr "保存每个运行中的设置的PID以及其它状态信息的目录"
msgid "Disabled"
@@ -141,7 +167,9 @@ msgstr "已禁用"
msgid "Dynamic DNS"
msgstr "动态DNS"
-msgid "Dynamic DNS allows that your router can be reached with a fixed hostname while having a dynamically changing IP address."
+msgid ""
+"Dynamic DNS allows that your router can be reached with a fixed hostname "
+"while having a dynamically changing IP address."
msgstr "动态DNS允许为拥有动态IP的主机配置一个固定的可访问域名."
msgid "Enable secure communication with DDNS provider"
@@ -171,8 +199,12 @@ msgstr "文件未找到"
msgid "File not found or empty"
msgstr "文件未找到或为空"
-msgid "Follow this link<br />You will find more hints to optimize your system to run DDNS scripts with all options"
-msgstr "打开这个链接<br />你将会得到更多关于如何通过所有设置项优化你的系统以运行DDNS脚本的提示."
+msgid ""
+"Follow this link<br />You will find more hints to optimize your system to "
+"run DDNS scripts with all options"
+msgstr ""
+"打开这个链接<br />你将会得到更多关于如何通过所有设置项优化你的系统以运行DDNS"
+"脚本的提示."
msgid "For detailed information about parameter settings look here."
msgstr "请看这里获得关于参数设置的详细信息"
@@ -201,7 +233,9 @@ msgstr "格式"
msgid "Format: IP or FQDN"
msgstr "格式:IP或者FQDN"
-msgid "GNU Wget will use the IP of given network, cURL will use the physical interface."
+msgid ""
+"GNU Wget will use the IP of given network, cURL will use the physical "
+"interface."
msgstr "GNU Wget将会使用给定的网络的IP地址,而cURL将会使用物理接口"
msgid "Global Settings"
@@ -228,8 +262,13 @@ msgstr "IPv4地址"
msgid "IPv6 address must be given in square brackets"
msgstr "IPv6地址必须填写在中括号(\"[ ]\")内"
-msgid "IPv6 is currently not (fully) supported by this system<br />Please follow the instructions on OpenWrt's homepage to enable IPv6 support<br />or update your system to the latest OpenWrt Release"
-msgstr "当前系统暂时不能(完整地)支持IPv6<br />请查看OpenWrt首页的介绍以启用IPv6支持<br />或者更新你的系统到最新OpenWrt版本"
+msgid ""
+"IPv6 is currently not (fully) supported by this system<br />Please follow "
+"the instructions on OpenWrt's homepage to enable IPv6 support<br />or update "
+"your system to the latest OpenWrt Release"
+msgstr ""
+"当前系统暂时不能(完整地)支持IPv6<br />请查看OpenWrt首页的介绍以启用IPv6支持"
+"<br />或者更新你的系统到最新OpenWrt版本"
msgid "IPv6 not supported"
msgstr "IPv6不被支持"
@@ -240,13 +279,21 @@ msgstr "IPv6地址"
msgid "If both cURL and GNU Wget are installed, Wget is used by default."
msgstr "如果cURL和GNU Wget同时被安装,那么Wget将会被优先使用."
-msgid "If this service section is disabled it could not be started.<br />Neither from LuCI interface nor from console"
-msgstr "如果服务配置被禁用那么它将不能被启动.<br />无论是通过LuCI页面或者是通过终端."
+msgid ""
+"If this service section is disabled it could not be started.<br />Neither "
+"from LuCI interface nor from console"
+msgstr ""
+"如果服务配置被禁用那么它将不能被启动.<br />无论是通过LuCI页面或者是通过终端."
-msgid "If you want to send updates for IPv4 and IPv6 you need to define two separate Configurations i.e. 'myddns_ipv4' and 'myddns_ipv6'"
-msgstr "如果你需要同时更新IPv4和IPv6地址,你需要单独添加两个配置项(例如'myddns_ipv4'和'myddns_ipv6')"
+msgid ""
+"If you want to send updates for IPv4 and IPv6 you need to define two "
+"separate Configurations i.e. 'myddns_ipv4' and 'myddns_ipv6'"
+msgstr ""
+"如果你需要同时更新IPv4和IPv6地址,你需要单独添加两个配置项(例"
+"如'myddns_ipv4'和'myddns_ipv6')"
-msgid "In some versions cURL/libcurl in OpenWrt is compiled without proxy support."
+msgid ""
+"In some versions cURL/libcurl in OpenWrt is compiled without proxy support."
msgstr "OpenWrt中,cURL/libcurl的某些版本编译时没有启用代理服务器支持"
msgid "Info"
@@ -255,11 +302,18 @@ msgstr "信息"
msgid "Interface"
msgstr "接口"
-msgid "Interval to check for changed IP<br />Values below 5 minutes == 300 seconds are not supported"
+msgid ""
+"Interval to check for changed IP<br />Values below 5 minutes == 300 seconds "
+"are not supported"
msgstr "检查IP是否改变的时间隔<br />不支持低于5分钟(300秒)的数值."
-msgid "Interval to force updates send to DDNS Provider<br />Setting this parameter to 0 will force the script to only run once<br />Values lower 'Check Interval' except '0' are not supported"
-msgstr "强制向提供商更新DDNS的时间周期<br />把这个参数设置为0将会让脚本仅执行一次<br />不支持低于\"检查时间周期\"的数值(除了0)."
+msgid ""
+"Interval to force updates send to DDNS Provider<br />Setting this parameter "
+"to 0 will force the script to only run once<br />Values lower 'Check "
+"Interval' except '0' are not supported"
+msgstr ""
+"强制向提供商更新DDNS的时间周期<br />把这个参数设置为0将会让脚本仅执行一次"
+"<br />不支持低于\"检查时间周期\"的数值(除了0)."
msgid "It is NOT recommended for casual users to change settings on this page."
msgstr "强烈不建议初次使用的用户修改本页设定."
@@ -285,10 +339,14 @@ msgstr "把日志记录到文件"
msgid "Log to syslog"
msgstr "把日志记录到系统日志"
-msgid "Neither GNU Wget with SSL nor cURL installed to select a network to use for communication."
+msgid ""
+"Neither GNU Wget with SSL nor cURL installed to select a network to use for "
+"communication."
msgstr "包含SSL支持的GNU Wget或者cURL均未被安装.无法选择一个网络用于通信."
-msgid "Neither GNU Wget with SSL nor cURL installed to support updates via HTTPS protocol."
+msgid ""
+"Neither GNU Wget with SSL nor cURL installed to support updates via HTTPS "
+"protocol."
msgstr "包含SSL支持的GNU Wget或者cURL均未被安装.无法使用HTTPS更新DDNS"
msgid "Network"
@@ -405,9 +463,14 @@ msgstr "状态目录"
msgid "Stopped"
msgstr "已停止"
-msgid "The currently installed 'ddns-scripts' package did not support all available settings."
+msgid ""
+"The currently installed 'ddns-scripts' package did not support all available "
+"settings."
msgstr "当前已安装的'ddns-scripts'软件包暂不支持所有可用设置项"
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr "没有已经配置好的服务项"
@@ -429,8 +492,11 @@ msgstr "用于检测的URL"
msgid "Unknown error"
msgstr "未知错误"
-msgid "Update URL to be used for updating your DDNS Provider.<br />Follow instructions you will find on their WEB page."
-msgstr "DDNS提供商用于更新DDNS的URL<br />跟随教程你将会在它们的网站上提供这个URL."
+msgid ""
+"Update URL to be used for updating your DDNS Provider.<br />Follow "
+"instructions you will find on their WEB page."
+msgstr ""
+"DDNS提供商用于更新DDNS的URL<br />跟随教程你将会在它们的网站上提供这个URL."
msgid "Update error"
msgstr "更新错误"
@@ -462,10 +528,13 @@ msgstr "正在应用更改..."
msgid "Warning"
msgstr "等待"
-msgid "Writes detailed messages to log file. File will be truncated automatically."
+msgid ""
+"Writes detailed messages to log file. File will be truncated automatically."
msgstr "向日志中写入详细信息.文件将会被自动减小."
-msgid "Writes log messages to syslog. Critical Errors will always be written to syslog."
+msgid ""
+"Writes log messages to syslog. Critical Errors will always be written to "
+"syslog."
msgstr "把日志写入系统日志.无论是否启用这项,错误信息总是会被写入系统日志"
msgid "You should install BIND host package for DNS requests."
diff --git a/applications/luci-app-ddns/po/zh-tw/ddns.po b/applications/luci-app-ddns/po/zh-tw/ddns.po
index ec930f432a..ec1fe779eb 100644
--- a/applications/luci-app-ddns/po/zh-tw/ddns.po
+++ b/applications/luci-app-ddns/po/zh-tw/ddns.po
@@ -455,6 +455,9 @@ msgid ""
"settings."
msgstr ""
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
msgid "There is no service configured."
msgstr ""
diff --git a/applications/luci-app-diag-core/luasrc/view/diag/index.htm b/applications/luci-app-diag-core/luasrc/view/diag/index.htm
index 328c4eccb9..c66776771f 100644
--- a/applications/luci-app-diag-core/luasrc/view/diag/index.htm
+++ b/applications/luci-app-diag-core/luasrc/view/diag/index.htm
@@ -4,7 +4,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content"><%:Diagnostics%></a></h2>
+<h2 name="content"><%:Diagnostics%></h2>
<p><%:The entries in the menu allow you to perform diagnostic tests on your system to aid in troubleshooting.%></p>
<p><%:The diagnostics available under this menu depend on what modules you have installed on your device.%></p>
<%+footer%>
diff --git a/applications/luci-app-diag-core/luasrc/view/diag/network_config_index.htm b/applications/luci-app-diag-core/luasrc/view/diag/network_config_index.htm
index 595cc5f5fe..3d01453e48 100644
--- a/applications/luci-app-diag-core/luasrc/view/diag/network_config_index.htm
+++ b/applications/luci-app-diag-core/luasrc/view/diag/network_config_index.htm
@@ -4,7 +4,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content"><%:Diagnostics%></a></h2>
+<h2 name="content"><%:Diagnostics%></h2>
<p><%:With this menu you can configure network diagnostics, such as network device scans and ping tests.%></p>
<p><%:The diagnostics available under this menu depend on what modules you have installed on your device.%></p>
<%+footer%>
diff --git a/applications/luci-app-diag-devinfo/Makefile b/applications/luci-app-diag-devinfo/Makefile
index 258fdee60b..0424fffa0c 100644
--- a/applications/luci-app-diag-devinfo/Makefile
+++ b/applications/luci-app-diag-devinfo/Makefile
@@ -7,7 +7,7 @@
include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI Diagnostics Tools (Device Info)
-LUCI_DEPENDS:=+luci-app-diag-core +smap +netdiscover +mac-to-devinfo +httping +smap-to-devinfo +netdiscover-to-devinfo
+LUCI_DEPENDS:=+luci-app-diag-core +smap +netdiscover +mac-to-devinfo +httping +smap-to-devinfo +netdiscover-to-devinfo @BROKEN
include ../../luci.mk
diff --git a/applications/luci-app-dump1090/luasrc/model/cbi/dump1090.lua b/applications/luci-app-dump1090/luasrc/model/cbi/dump1090.lua
index 6015ffe1fc..4470a0d2f0 100644
--- a/applications/luci-app-dump1090/luasrc/model/cbi/dump1090.lua
+++ b/applications/luci-app-dump1090/luasrc/model/cbi/dump1090.lua
@@ -1,4 +1,4 @@
--- Copyright 2014 Álvaro Fernández Rojas <noltari@gmail.com>
+-- Copyright 2014-2015 Álvaro Fernández Rojas <noltari@gmail.com>
-- Licensed to the public under the Apache License 2.0.
m = Map("dump1090", "dump1090", translate("dump1090 is a Mode S decoder specifically designed for RTLSDR devices, here you can configure the settings."))
@@ -12,6 +12,7 @@ enable.enabled="0"
enable.disabled="1"
enable.default = "1"
enable.rmempty = false
+
respawn=s:option(Flag, "respawn", translate("Respawn"))
respawn.default = false
@@ -34,6 +35,15 @@ ifile=s:option(Value, "ifile", translate("Data file"))
ifile.rmempty = true
ifile.datatype = "file"
+iformat=s:option(ListValue, "iformat", translate("Sample format for data file"))
+iformat:value("", translate("Default"))
+iformat:value("UC8")
+iformat:value("SC16")
+iformat:value("SC16Q11")
+
+throttle=s:option(Flag, "throttle", translate("When reading from a file play back in realtime, not at max speed"))
+throttle.default = false
+
raw=s:option(Flag, "raw", translate("Show only messages hex values"))
raw.default = false
@@ -76,13 +86,17 @@ net_bo_port=s:option(Value, "net_bo_port", translate("TCP Beast output listen po
net_bo_port.rmempty = true
net_bo_port.datatype = "port"
+net_fatsv_port=s:option(Value, "net_fatsv_port", translate("FlightAware TSV output port"))
+net_fatsv_port.rmempty = true
+net_fatsv_port.datatype = "port"
+
net_ro_size=s:option(Value, "net_ro_size", translate("TCP raw output minimum size"))
net_ro_size.rmempty = true
net_ro_size.datatype = "uinteger"
-net_ro_rate=s:option(Value, "net_ro_rate", translate("TCP raw output memory flush rate"))
-net_ro_rate.rmempty = true
-net_ro_rate.datatype = "uinteger"
+net_ro_interval=s:option(Value, "net_ro_interval", translate("TCP raw output memory flush rate in seconds"))
+net_ro_interval.rmempty = true
+net_ro_interval.datatype = "uinteger"
net_heartbeat=s:option(Value, "net_heartbeat", translate("TCP heartbeat rate in seconds"))
net_heartbeat.rmempty = true
@@ -92,13 +106,23 @@ net_buffer=s:option(Value, "net_buffer", translate("TCP buffer size 64Kb * (2^n)
net_buffer.rmempty = true
net_buffer.datatype = "uinteger"
+net_verbatim=s:option(Flag, "net_verbatim", translate("Do not apply CRC corrections to messages we forward"))
+net_verbatim.default = false
+
+forward_mlat=s:option(Flag, "forward_mlat", translate("Allow forwarding of received mlat results to output ports"))
+forward_mlat.default = false
+
lat=s:option(Value, "lat", translate("Reference/receiver latitude for surface posn"))
lat.rmempty = true
-lat.datatype = "integer"
+lat.datatype = "float"
lon=s:option(Value, "lon", translate("Reference/receiver longitude for surface posn"))
lon.rmempty = true
-lon.datatype = "integer"
+lon.datatype = "float"
+
+max_range=s:option(Value, "max_range", translate("Absolute maximum range for position decoding"))
+max_range.rmempty = true
+max_range.datatype = "uinteger"
fix=s:option(Flag, "fix", translate("Enable single-bits error correction using CRC"))
fix.default = false
@@ -121,6 +145,9 @@ mlat.default = false
stats=s:option(Flag, "stats", translate("Print stats at exit"))
stats.default = false
+stats_range=s:option(Flag, "stats_range", translate("Collect/show range histogram"))
+stats_range.default = false
+
stats_every=s:option(Value, "stats_every", translate("Show and reset stats every seconds"))
stats_every.rmempty = true
stats_every.datatype = "uinteger"
@@ -131,15 +158,42 @@ onlyaddr.default = false
metric=s:option(Flag, "metric", translate("Use metric units"))
metric.default = false
-snip=s:option(Flag, "snip", translate("Strip IQ file removing samples"))
+snip=s:option(Value, "snip", translate("Strip IQ file removing samples"))
snip.rmempty = true
snip.datatype = "uinteger"
-debug_mode=s:option(Flag, "debug", translate("Debug mode flags"))
+debug_mode=s:option(Value, "debug", translate("Debug mode flags"))
debug_mode.rmempty = true
-ppm=s:option(Flag, "ppm", translate("Set receiver error in parts per million"))
+ppm=s:option(Value, "ppm", translate("Set receiver error in parts per million"))
ppm.rmempty = true
ppm.datatype = "uinteger"
+html_dir=s:option(Value, "html_dir", translate("Base directory for the internal HTTP server"))
+html_dir.rmempty = true
+html_dir.datatype = "directory"
+
+write_json=s:option(Value, "write_json", translate("Periodically write json output to a directory"))
+write_json.rmempty = true
+write_json.datatype = "directory"
+
+write_json_every=s:option(Flag, "write_json_every", translate("Write json output every t seconds"))
+write_json_every.rmempty = true
+write_json_every.datatype = "uinteger"
+
+json_location_accuracy=s:option(ListValue, "json_location_accuracy", translate("Accuracy of receiver location in json metadata"))
+json_location_accuracy:value("", translate("Default"))
+json_location_accuracy:value("0", "No location")
+json_location_accuracy:value("1", "Approximate")
+json_location_accuracy:value("2", "Exact")
+
+oversample=s:option(Flag, "oversample", translate("Use the 2.4MHz demodulator"))
+oversample.default = false
+
+dcfilter=s:option(Flag, "dcfilter", translate("Apply a 1Hz DC filter to input data"))
+dcfilter.default = false
+
+measure_noise=s:option(Flag, "measure_noise", translate("Measure noise power"))
+measure_noise.default = false
+
return m
diff --git a/applications/luci-app-firewall/luasrc/model/cbi/firewall/zone-details.lua b/applications/luci-app-firewall/luasrc/model/cbi/firewall/zone-details.lua
index 46b3744403..c8b8f22bda 100644
--- a/applications/luci-app-firewall/luasrc/model/cbi/firewall/zone-details.lua
+++ b/applications/luci-app-firewall/luasrc/model/cbi/firewall/zone-details.lua
@@ -60,7 +60,7 @@ s:tab("advanced", translate("Advanced Settings"))
name = s:taboption("general", Value, "name", translate("Name"))
name.optional = false
name.forcewrite = true
-name.datatype = "uciname"
+name.datatype = "and(uciname,maxlength(11))"
function name.write(self, section, value)
if zone:name() ~= value then
@@ -76,15 +76,6 @@ function name.write(self, section, value)
}
end
-function name.validate(self, value)
- -- fw3 defines 14 as the maximum length of zone name
- if #value > 14 then
- return nil, translate("Zone name is too long")
- else
- return value
- end
-end
-
p = {
s:taboption("general", ListValue, "input", translate("Input")),
s:taboption("general", ListValue, "output", translate("Output")),
diff --git a/applications/luci-app-firewall/po/pl/firewall.po b/applications/luci-app-firewall/po/pl/firewall.po
index 18be74d231..2ccd25ccc1 100644
--- a/applications/luci-app-firewall/po/pl/firewall.po
+++ b/applications/luci-app-firewall/po/pl/firewall.po
@@ -301,7 +301,7 @@ msgid "Restrict Masquerading to given destination subnets"
msgstr "Ogranicz maskaradę do wskazanych sieci docelowych"
msgid "Restrict Masquerading to given source subnets"
-msgstr "Ogranicz maskaradę do wskazanych sieci żródłowych"
+msgstr "Ogranicz maskaradę do wskazanych sieci źródłowych"
# Wstawiłem rodzinę gdyż gdzieś wcześniej było tak opisane ale klasa pasuje mi tu bardziej.
# Obsy - niestety ale "rodzina". W gui dotyczy to wyboru IPv4/IPv6, więc "rodzina" a nie klasa.
@@ -317,7 +317,7 @@ msgid ""
"Rewrite matched traffic to the given source port. May be left empty to only "
"rewrite the IP address."
msgstr ""
-"Przepisz dopasowany ruch do danego portu żródłowego. Można zostawić puste "
+"Przepisz dopasowany ruch do danego portu źródłowego. Można zostawić puste "
"aby przepisać tylko adres IP"
msgid "Rewrite to source %s"
@@ -339,7 +339,7 @@ msgid "Source MAC address"
msgstr "Źródłowy adres MAC"
msgid "Source NAT"
-msgstr "NAT żródłowy"
+msgstr "NAT źródłowy"
# http://www.digipedia.pl/def/doc/id/677604507/name/SNAT/
msgid ""
@@ -348,7 +348,7 @@ msgid ""
"multiple WAN addresses to internal subnets."
msgstr ""
"SNAT używany jest wtedy, gdy zmieniane są adresy pakietów połączenia "
-"wychodzącego, czyli pakiety żródłowe. Wykonywany jest zawsze po routowaniu "
+"wychodzącego, czyli pakiety źródłowe. Wykonywany jest zawsze po routowaniu "
"(POSTROUTING), a więc w chwili, gdy pakiety są gotowe opuścić host. "
"IPmasquerading jest formą SNAT."
diff --git a/applications/luci-app-freifunk-diagnostics/luasrc/view/freifunk/diagnostics.htm b/applications/luci-app-freifunk-diagnostics/luasrc/view/freifunk/diagnostics.htm
index 2f4914e5d5..fe205d053b 100644
--- a/applications/luci-app-freifunk-diagnostics/luasrc/view/freifunk/diagnostics.htm
+++ b/applications/luci-app-freifunk-diagnostics/luasrc/view/freifunk/diagnostics.htm
@@ -34,7 +34,7 @@ local has_traceroute6 = fs.access("/usr/bin/traceroute6")
legend.parentNode.style.display = 'block';
legend.style.display = 'inline';
- stxhr.get('<%=luci.dispatcher.build_url("freifunk", "status")%>/diag_' + tool + protocol + '/' + addr, null,
+ stxhr.get('<%=url('freifunk/status')%>/diag_' + tool + protocol + '/' + addr, null,
function(x)
{
if (x.responseText)
@@ -55,7 +55,7 @@ local has_traceroute6 = fs.access("/usr/bin/traceroute6")
<form method="post" action="<%=pcdata(luci.http.getenv("REQUEST_URI"))%>">
<div class="cbi-map">
- <h2><a id="content" name="content"><%:Diagnostics%></a></h2>
+ <h2 name="content"><%:Diagnostics%></h2>
<fieldset class="cbi-section">
<legend><%:Network Utilities%></legend>
diff --git a/applications/luci-app-freifunk-widgets/luasrc/view/freifunk/widgets/search/main.htm b/applications/luci-app-freifunk-widgets/luasrc/view/freifunk/widgets/search/main.htm
index e319f15fbc..f2e2fb9069 100644
--- a/applications/luci-app-freifunk-widgets/luasrc/view/freifunk/widgets/search/main.htm
+++ b/applications/luci-app-freifunk-widgets/luasrc/view/freifunk/widgets/search/main.htm
@@ -33,7 +33,7 @@ end
<div id="<%=name%>" style="width:<%=width%>;float:left">
<h2><%=title%></h2>
<div id="form_<%=name%>">
- <form name="searchform" id="search_<%=name%>" action="<%=luci.dispatcher.build_url('freifunk', 'search_redirect')%>">
+ <form name="searchform" id="search_<%=name%>" action="<%=url('freifunk/search_redirect')%>">
<input type="text" name="searchterms" style="margin-bottom:15px; width: 90%"><br />
<%
local checked = " checked"
diff --git a/applications/luci-app-ltqtapi/luasrc/view/telephony_status.htm b/applications/luci-app-ltqtapi/luasrc/view/telephony_status.htm
index 234f909342..d861ef9fcb 100644
--- a/applications/luci-app-ltqtapi/luasrc/view/telephony_status.htm
+++ b/applications/luci-app-ltqtapi/luasrc/view/telephony_status.htm
@@ -1,5 +1,5 @@
<script type="text/javascript">//<![CDATA[
-XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "telephony", "status")%>', null,
+XHR.poll(5, '<%=url('admin/telephony/status')%>', null,
function(x, st)
{
var tb = document.getElementById('telephony_status_table');
diff --git a/applications/luci-app-minidlna/luasrc/view/minidlna_status.htm b/applications/luci-app-minidlna/luasrc/view/minidlna_status.htm
index 098a72a073..866eded03e 100644
--- a/applications/luci-app-minidlna/luasrc/view/minidlna_status.htm
+++ b/applications/luci-app-minidlna/luasrc/view/minidlna_status.htm
@@ -1,5 +1,5 @@
<script type="text/javascript">//<![CDATA[
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin/services/minidlna_status")%>', null,
+ XHR.poll(5, '<%=url("admin/services/minidlna_status")%>', null,
function(x, st)
{
var tb = document.getElementById('minidlna_status');
diff --git a/applications/luci-app-mjpg-streamer/po/templates/mjpg-streamer.pot b/applications/luci-app-mjpg-streamer/po/templates/mjpg-streamer.pot
index 5cd722f3a7..ecb374d7f3 100644
--- a/applications/luci-app-mjpg-streamer/po/templates/mjpg-streamer.pot
+++ b/applications/luci-app-mjpg-streamer/po/templates/mjpg-streamer.pot
@@ -37,9 +37,15 @@ msgstr ""
msgid "Drop frames smaller then this limit"
msgstr ""
+msgid "Enable MJPG-streamer"
+msgstr ""
+
msgid "Enable YUYV format"
msgstr ""
+msgid "Enabled"
+msgstr ""
+
msgid "Exceed"
msgstr ""
@@ -63,9 +69,15 @@ msgstr ""
msgid "Frames per second"
msgstr ""
+msgid "General"
+msgstr ""
+
msgid "HTTP output"
msgstr ""
+msgid "Input plugin"
+msgstr ""
+
msgid "Interval between saving pictures"
msgstr ""
@@ -90,9 +102,15 @@ msgstr ""
msgid "On"
msgstr ""
+msgid "Output plugin"
+msgstr ""
+
msgid "Password"
msgstr ""
+msgid "Plugin settings"
+msgstr ""
+
msgid "Port"
msgstr ""
diff --git a/applications/luci-app-mjpg-streamer/po/zh-cn/mjpg-streamer.po b/applications/luci-app-mjpg-streamer/po/zh-cn/mjpg-streamer.po
index 3ad9a4a53b..8b51f6ad4b 100644
--- a/applications/luci-app-mjpg-streamer/po/zh-cn/mjpg-streamer.po
+++ b/applications/luci-app-mjpg-streamer/po/zh-cn/mjpg-streamer.po
@@ -13,25 +13,6 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-SourceCharset: UTF-8\n"
-
-msgid "Enabled"
-msgstr "启用"
-
-msgid "Enable MJPG-streamer"
-msgstr "启用MJPG-streamer"
-
-msgid "General"
-msgstr "一般设置"
-
-msgid "Plugin settings"
-msgstr "插件设置"
-
-msgid "Input plugin"
-msgstr "输入插件"
-
-msgid "Output plugin"
-msgstr "输出插件"
-
msgid "Allow ringbuffer to exceed limit by this amount"
msgstr "允许环形缓冲区最多超过这个数值"
@@ -68,9 +49,15 @@ msgstr "不要初始化dynctrls"
msgid "Drop frames smaller then this limit"
msgstr "丢弃小于该尺寸限制的帧"
+msgid "Enable MJPG-streamer"
+msgstr "启用MJPG-streamer"
+
msgid "Enable YUYV format"
msgstr "启用YUYV格式"
+msgid "Enabled"
+msgstr "启用"
+
msgid "Exceed"
msgstr "超出"
@@ -94,9 +81,15 @@ msgstr "保存网页的文件夹"
msgid "Frames per second"
msgstr "帧每秒"
+msgid "General"
+msgstr "一般设置"
+
msgid "HTTP output"
msgstr "HTTP输出"
+msgid "Input plugin"
+msgstr "输入插件"
+
msgid "Interval between saving pictures"
msgstr "图片保存时间间隔"
@@ -121,9 +114,15 @@ msgstr "关"
msgid "On"
msgstr "开"
+msgid "Output plugin"
+msgstr "输出插件"
+
msgid "Password"
msgstr "密码"
+msgid "Plugin settings"
+msgstr "插件设置"
+
msgid "Port"
msgstr "端口"
diff --git a/applications/luci-app-multiwan/luasrc/view/multiwan_status.htm b/applications/luci-app-multiwan/luasrc/view/multiwan_status.htm
index 8c4127b237..03bfad1c5d 100644
--- a/applications/luci-app-multiwan/luasrc/view/multiwan_status.htm
+++ b/applications/luci-app-multiwan/luasrc/view/multiwan_status.htm
@@ -1,5 +1,5 @@
<script type="text/javascript">//<![CDATA[
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "network", "multiwan", "status")%>', null,
+ XHR.poll(5, '<%=url('admin/network/multiwan/status')%>', null,
function(x, st)
{
var tx = document.getElementById('multiwan_status_text');
diff --git a/applications/luci-app-multiwan/po/es/multiwan.po b/applications/luci-app-multiwan/po/es/multiwan.po
index 1a54f7557b..4d2447eecc 100644
--- a/applications/luci-app-multiwan/po/es/multiwan.po
+++ b/applications/luci-app-multiwan/po/es/multiwan.po
@@ -118,7 +118,7 @@ msgid "WAN Interfaces"
msgstr "Interfaces WAN"
msgid "WAN Uplink"
-msgstr "Enalce saliente WAN"
+msgstr "Enlace saliente WAN"
msgid "all"
msgstr "todos"
diff --git a/applications/luci-app-ocserv/luasrc/controller/ocserv.lua b/applications/luci-app-ocserv/luasrc/controller/ocserv.lua
index dbeaaf8524..79c6ddb78e 100644
--- a/applications/luci-app-ocserv/luasrc/controller/ocserv.lua
+++ b/applications/luci-app-ocserv/luasrc/controller/ocserv.lua
@@ -28,7 +28,7 @@ function index()
call("ocserv_status")).leaf = true
entry({"admin", "services", "ocserv", "disconnect"},
- call("ocserv_disconnect")).leaf = true
+ post("ocserv_disconnect")).leaf = true
end
diff --git a/applications/luci-app-ocserv/luasrc/model/cbi/ocserv/main.lua b/applications/luci-app-ocserv/luasrc/model/cbi/ocserv/main.lua
index d1cc155fa5..74edaf4894 100644
--- a/applications/luci-app-ocserv/luasrc/model/cbi/ocserv/main.lua
+++ b/applications/luci-app-ocserv/luasrc/model/cbi/ocserv/main.lua
@@ -74,12 +74,6 @@ o.default = "plain"
o:value("plain")
o:value("PAM")
-o = s:taboption("general", Value, "zone", translate("Firewall Zone"),
- translate("The firewall zone that the VPN clients will be set to"))
-o.nocreate = true
-o.default = "lan"
-o.template = "cbi/firewall_zonelist"
-
s:taboption("general", Value, "port", translate("Port"),
translate("The same UDP and TCP ports will be used"))
s:taboption("general", Value, "max_clients", translate("Max clients"))
@@ -102,22 +96,6 @@ local cisco = s:taboption("general", Flag, "cisco_compat", translate("AnyConnect
translate("Enable support for CISCO AnyConnect clients"))
cisco.default = "1"
-ipaddr = s:taboption("general", Value, "ipaddr", translate("VPN <abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Network-Address"))
-ipaddr.datatype = "ip4addr"
-ipaddr.default = "192.168.100.1"
-
-nm = s:taboption("general", Value, "netmask", translate("VPN <abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Netmask"))
-nm.datatype = "ip4addr"
-nm.default = "255.255.255.0"
-nm:value("255.255.255.0")
-nm:value("255.255.0.0")
-nm:value("255.0.0.0")
-
-if has_ipv6 then
- ip6addr = s:taboption("general", Value, "ip6addr", translate("VPN <abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Network-Address"), translate("<abbr title=\"Classless Inter-Domain Routing\">CIDR</abbr>-Notation: address/prefix"))
- ip6addr.datatype = "ip6addr"
-end
-
tmpl = s:taboption("template", Value, "_tmpl",
translate("Edit the template that is used for generating the ocserv configuration."))
@@ -144,10 +122,36 @@ function ca.cfgvalue(self, section)
return nixio.fs.readfile("/etc/ocserv/ca.pem")
end
+--[[Networking options]]--
+
+local parp = s:taboption("general", Flag, "proxy_arp", translate("Enable proxy arp"),
+ translate("Provide addresses to clients from a subnet of LAN; if enabled the network below must be a subnet of LAN. Note that the first address of the specified subnet will be reserved by ocserv, so it should not be in use. If you have a network in LAN covering 192.168.1.0/24 use 192.168.1.192/26 to reserve the upper 62 addresses."))
+parp.default = "0"
+
+ipaddr = s:taboption("general", Value, "ipaddr", translate("VPN <abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Network-Address"),
+ translate("The IPv4 subnet address to provide to clients; this should be some private network different than the LAN addresses unless proxy ARP is enabled. Leave empty to attempt auto-configuration."))
+ipaddr.datatype = "ip4addr"
+ipaddr.default = "192.168.100.1"
+
+nm = s:taboption("general", Value, "netmask", translate("VPN <abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Netmask"),
+ translate("The mask of the subnet above."))
+nm.datatype = "ip4addr"
+nm.default = "255.255.255.0"
+nm:value("255.255.255.0")
+nm:value("255.255.0.0")
+nm:value("255.0.0.0")
+
+if has_ipv6 then
+ ip6addr = s:taboption("general", Value, "ip6addr", translate("VPN <abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Network-Address"), translate("<abbr title=\"Classless Inter-Domain Routing\">CIDR</abbr>-Notation: address/prefix"),
+ translate("The IPv6 subnet address to provide to clients; leave empty to attempt auto-configuration."))
+ ip6addr.datatype = "ip6addr"
+end
+
+
--[[DNS]]--
s = m:section(TypedSection, "dns", translate("DNS servers"),
- translate("The DNS servers to be provided to clients; can be either IPv6 or IPv4"))
+ translate("The DNS servers to be provided to clients; can be either IPv6 or IPv4. Typically you should include the address of this device"))
s.anonymous = true
s.addremove = true
s.template = "cbi/tblsection"
diff --git a/applications/luci-app-ocserv/luasrc/view/ocserv_status.htm b/applications/luci-app-ocserv/luasrc/view/ocserv_status.htm
index fabc1bca9e..03a9ed70ee 100644
--- a/applications/luci-app-ocserv/luasrc/view/ocserv_status.htm
+++ b/applications/luci-app-ocserv/luasrc/view/ocserv_status.htm
@@ -1,7 +1,7 @@
<script type="text/javascript">//<![CDATA[
function ocserv_disconnect(idx) {
- XHR.get('<%=luci.dispatcher.build_url("admin", "services", "ocserv", "disconnect")%>/' + idx, null,
+ (new XHR()).post('<%=url('admin/services/ocserv/disconnect')%>/' + idx, { token: '<%=token%>' },
function(x)
{
var tb = document.getElementById('ocserv_status_table');
@@ -11,7 +11,7 @@
);
}
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "services", "ocserv", "status")%>', null,
+ XHR.poll(5, '<%=url('admin/services/ocserv/status')%>', null,
function(x, st)
{
var tb = document.getElementById('ocserv_status_table');
diff --git a/applications/luci-app-olsr-services/luasrc/view/freifunk-services/services.htm b/applications/luci-app-olsr-services/luasrc/view/freifunk-services/services.htm
index 0e59c61258..476150dd28 100644
--- a/applications/luci-app-olsr-services/luasrc/view/freifunk-services/services.htm
+++ b/applications/luci-app-olsr-services/luasrc/view/freifunk-services/services.htm
@@ -149,7 +149,7 @@ end
- <h2><a id="content" name="content"><%:Services%></a></h2>
+ <h2 name="content"><%:Services%></h2>
<fieldset class="cbi-section">
<legend><%:Internal services%></legend>
diff --git a/applications/luci-app-olsr/luasrc/view/status-olsr/error_olsr.htm b/applications/luci-app-olsr/luasrc/view/status-olsr/error_olsr.htm
index d9976701fa..eb41219c7e 100644
--- a/applications/luci-app-olsr/luasrc/view/status-olsr/error_olsr.htm
+++ b/applications/luci-app-olsr/luasrc/view/status-olsr/error_olsr.htm
@@ -5,7 +5,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content"><%:OLSR Daemon%></a></h2>
+<h2 name="content"><%:OLSR Daemon%></h2>
<p class="error"><%:Unable to connect to the OLSR daemon!%></p>
<p><%:Make sure that OLSRd is running, the "jsoninfo" plugin is loaded, configured on port 9090 and accepts connections from "127.0.0.1".%></p>
<%+footer%>
diff --git a/applications/luci-app-olsr/luasrc/view/status-olsr/hna.htm b/applications/luci-app-olsr/luasrc/view/status-olsr/hna.htm
index 89e4436f72..5ea7b74e4d 100644
--- a/applications/luci-app-olsr/luasrc/view/status-olsr/hna.htm
+++ b/applications/luci-app-olsr/luasrc/view/status-olsr/hna.htm
@@ -73,7 +73,7 @@ XHR.poll(10, '<%=REQUEST_URI%>', { status: 1 },
);
//]]></script>
-<h2><a id="content" name="content"><%:Active host net announcements%></a></h2>
+<h2 name="content"><%:Active host net announcements%></h2>
<div id="togglebuttons"></div>
<fieldset class="cbi-section">
diff --git a/applications/luci-app-olsr/luasrc/view/status-olsr/interfaces.htm b/applications/luci-app-olsr/luasrc/view/status-olsr/interfaces.htm
index 3fb3a58e9c..81d0a3dd31 100644
--- a/applications/luci-app-olsr/luasrc/view/status-olsr/interfaces.htm
+++ b/applications/luci-app-olsr/luasrc/view/status-olsr/interfaces.htm
@@ -11,7 +11,7 @@ local i = 1
<%+header%>
-<h2><a id="content" name="content"><%:Interfaces%></a></h2>
+<h2 name="content"><%:Interfaces%></h2>
<div id="togglebuttons"></div>
diff --git a/applications/luci-app-olsr/luasrc/view/status-olsr/mid.htm b/applications/luci-app-olsr/luasrc/view/status-olsr/mid.htm
index 3c10bd66aa..f658288fc1 100644
--- a/applications/luci-app-olsr/luasrc/view/status-olsr/mid.htm
+++ b/applications/luci-app-olsr/luasrc/view/status-olsr/mid.htm
@@ -10,7 +10,7 @@ local i = 1
%>
<%+header%>
-<h2><a id="content" name="content"><%:Active MID announcements%></a></h2>
+<h2 name="content"><%:Active MID announcements%></h2>
<div id="togglebuttons"></div>
<fieldset class="cbi-section">
diff --git a/applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm b/applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm
index 9ad0d8f898..31dd7d05ac 100644
--- a/applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm
+++ b/applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm
@@ -105,7 +105,7 @@ end
//]]></script>
-<h2><a id="content" name="content"><%:OLSR connections%></a></h2>
+<h2 name="content"><%:OLSR connections%></h2>
<div id="togglebuttons"></div>
diff --git a/applications/luci-app-olsr/luasrc/view/status-olsr/overview.htm b/applications/luci-app-olsr/luasrc/view/status-olsr/overview.htm
index fa32315280..61e17b3b2d 100644
--- a/applications/luci-app-olsr/luasrc/view/status-olsr/overview.htm
+++ b/applications/luci-app-olsr/luasrc/view/status-olsr/overview.htm
@@ -155,7 +155,7 @@ XHR.poll(10, '<%=REQUEST_URI%>/json', { },
<div id="error" class="error"></div>
-<h2><a id="content" name="content">OLSR <%:Overview%></a></h2>
+<h2 name="content">OLSR <%:Overview%></h2>
<fieldset class="cbi-section">
<legend><%:Network%></legend>
diff --git a/applications/luci-app-olsr/luasrc/view/status-olsr/routes.htm b/applications/luci-app-olsr/luasrc/view/status-olsr/routes.htm
index d2b0c1be8d..8e46daa022 100644
--- a/applications/luci-app-olsr/luasrc/view/status-olsr/routes.htm
+++ b/applications/luci-app-olsr/luasrc/view/status-olsr/routes.htm
@@ -89,7 +89,7 @@ XHR.poll(20, '<%=REQUEST_URI%>', { status: 1 },
-<h2><a id="content" name="content"><%:Known OLSR routes%></a></h2>
+<h2 name="content"><%:Known OLSR routes%></h2>
<div id="togglebuttons"></div>
diff --git a/applications/luci-app-olsr/luasrc/view/status-olsr/smartgw.htm b/applications/luci-app-olsr/luasrc/view/status-olsr/smartgw.htm
index 45f6515339..6aa7a75461 100644
--- a/applications/luci-app-olsr/luasrc/view/status-olsr/smartgw.htm
+++ b/applications/luci-app-olsr/luasrc/view/status-olsr/smartgw.htm
@@ -86,7 +86,7 @@ XHR.poll(10, '<%=REQUEST_URI%>', { status: 1 },
<%+header%>
-<h2><a id="content" name="content"><%:SmartGW announcements%></a></h2>
+<h2 name="content"><%:SmartGW announcements%></h2>
<div id="togglebuttons"></div>
diff --git a/applications/luci-app-olsr/luasrc/view/status-olsr/topology.htm b/applications/luci-app-olsr/luasrc/view/status-olsr/topology.htm
index ee69f72d75..b3abeaecbe 100644
--- a/applications/luci-app-olsr/luasrc/view/status-olsr/topology.htm
+++ b/applications/luci-app-olsr/luasrc/view/status-olsr/topology.htm
@@ -11,7 +11,7 @@ local olsrtools = require "luci.tools.olsr"
%>
<%+header%>
-<h2><a id="content" name="content"><%:Active OLSR nodes%></a></h2>
+<h2 name="content"><%:Active OLSR nodes%></h2>
<div id="togglebuttons"></div>
diff --git a/applications/luci-app-openvpn/luasrc/model/cbi/openvpn-advanced.lua b/applications/luci-app-openvpn/luasrc/model/cbi/openvpn-advanced.lua
index fa1530026a..1508493f3e 100644
--- a/applications/luci-app-openvpn/luasrc/model/cbi/openvpn-advanced.lua
+++ b/applications/luci-app-openvpn/luasrc/model/cbi/openvpn-advanced.lua
@@ -74,6 +74,7 @@ local knownParams = {
{ Value, "route_gateway", "10.234.1.1", translate("Specify a default gateway for routes") },
{ Value, "route_delay", 0, translate("Delay n seconds after connection") },
{ Flag, "route_noexec", 0, translate("Don't add routes automatically") },
+ { Flag, "route_nopull", 0, translate("Don't pull routes automatically") },
{ ListValue, "mtu_disc", { "yes", "maybe", "no" }, translate("Enable Path MTU discovery") },
{ Flag, "mtu_test", 0, translate("Empirically measure MTU") },
diff --git a/applications/luci-app-openvpn/luasrc/model/cbi/openvpn-basic.lua b/applications/luci-app-openvpn/luasrc/model/cbi/openvpn-basic.lua
index 561b0dd028..e75203db60 100644
--- a/applications/luci-app-openvpn/luasrc/model/cbi/openvpn-basic.lua
+++ b/applications/luci-app-openvpn/luasrc/model/cbi/openvpn-basic.lua
@@ -24,7 +24,7 @@ local basicParams = {
{ ListValue,"comp_lzo",{"yes","no","adaptive"}, translate("Use fast LZO compression") },
{ Value,"keepalive","10 60", translate("Helper directive to simplify the expression of --ping and --ping-restart in server mode configurations") },
- { ListValue,"proto",{ "udp", "tcp" }, translate("Use protocol") },
+ { ListValue,"proto",{ "udp", "udp6", "tcp", "tcp6" }, translate("Use protocol") },
{ Flag,"client",0, translate("Configure client mode") },
{ Flag,"client_to_client",0, translate("Allow client-to-client traffic") },
diff --git a/applications/luci-app-openvpn/luasrc/view/openvpn/pageswitch.htm b/applications/luci-app-openvpn/luasrc/view/openvpn/pageswitch.htm
index ac5c8936ec..f22cb68c7b 100644
--- a/applications/luci-app-openvpn/luasrc/view/openvpn/pageswitch.htm
+++ b/applications/luci-app-openvpn/luasrc/view/openvpn/pageswitch.htm
@@ -6,14 +6,14 @@
<fieldset class="cbi-section">
<legend>
- <a href="<%=luci.dispatcher.build_url("admin", "services", "openvpn")%>"><%:Overview%></a> &raquo;
+ <a href="<%=url('admin/services/openvpn')%>"><%:Overview%></a> &raquo;
<%=luci.i18n.translatef("Instance \"%s\"", self.instance)%>
</legend>
<% if self.mode == "basic" then %>
- <a href="<%=luci.dispatcher.build_url("admin", "services", "openvpn", "advanced", self.instance, "Service")%>"><%:Switch to advanced configuration »%></a>
+ <a href="<%=url('admin/services/openvpn/advanced', self.instance, "Service")%>"><%:Switch to advanced configuration »%></a>
<% else %>
- <a href="<%=luci.dispatcher.build_url("admin", "services", "openvpn", "basic", self.instance)%>"><%:« Switch to basic configuration%></a>
+ <a href="<%=url('admin/services/openvpn/basic', self.instance)%>"><%:« Switch to basic configuration%></a>
<hr style="margin:0.5em 0" />
<%:Configuration category%>:
<% for i, c in ipairs(self.categories) do %>
diff --git a/applications/luci-app-polipo/luasrc/view/polipo_status.htm b/applications/luci-app-polipo/luasrc/view/polipo_status.htm
index c2695ca82b..007d2d5e4e 100644
--- a/applications/luci-app-polipo/luasrc/view/polipo_status.htm
+++ b/applications/luci-app-polipo/luasrc/view/polipo_status.htm
@@ -9,7 +9,7 @@ local port = uci:get("polipo", "general", "proxyPort") or "8123"
<%+header%>
<div class="cbi-map">
- <h2><a id="content" name="content"><%:Polipo Status%></a></h2>
+ <h2 name="content"><%:Polipo Status%></h2>
<div class="cbi-section">
<iframe id="sf" src="http://<%=luci.http.getenv('SERVER_NAME')%>:<%=port%>/polipo/" style="width:100%; height:350px; border:none"></iframe>
</div>
diff --git a/applications/luci-app-privoxy/Makefile b/applications/luci-app-privoxy/Makefile
index e16eb4176e..260f840c63 100644
--- a/applications/luci-app-privoxy/Makefile
+++ b/applications/luci-app-privoxy/Makefile
@@ -10,11 +10,11 @@ PKG_NAME:=luci-app-privoxy
# Version == major.minor.patch
# increase "minor" on new functionality and "patch" on patches/optimization
-PKG_VERSION:=1.0.4
+PKG_VERSION:=1.0.5
# Release == build
# increase on changes of translation files
-PKG_RELEASE:=2
+PKG_RELEASE:=1
PKG_LICENSE:=Apache-2.0
PKG_MAINTAINER:=Christian Schoenebeck <christian.schoenebeck@gmail.com>
diff --git a/applications/luci-app-privoxy/luasrc/controller/privoxy.lua b/applications/luci-app-privoxy/luasrc/controller/privoxy.lua
index 58ba80724c..0cedab48ae 100644
--- a/applications/luci-app-privoxy/luasrc/controller/privoxy.lua
+++ b/applications/luci-app-privoxy/luasrc/controller/privoxy.lua
@@ -15,7 +15,7 @@ PRIVOXY_MIN = "3.0.22-0" -- minimum version of service required
function index()
entry( {"admin", "services", "privoxy"}, cbi("privoxy"), _("Privoxy WEB proxy"), 59)
entry( {"admin", "services", "privoxy", "logview"}, call("logread") ).leaf = true
- entry( {"admin", "services", "privoxy", "startstop"}, call("startstop") ).leaf = true
+ entry( {"admin", "services", "privoxy", "startstop"}, post("startstop") ).leaf = true
entry( {"admin", "services", "privoxy", "status"}, call("get_pid") ).leaf = true
end
diff --git a/applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua b/applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua
index c415f8e064..8ea2496173 100644
--- a/applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua
+++ b/applications/luci-app-privoxy/luasrc/model/cbi/privoxy.lua
@@ -14,7 +14,7 @@ local HELP = [[<a href="http://www.privoxy.org/user-manual/config.html#%s" targe
local VERINST = CTRL.ipkg_ver_installed("privoxy")
local VEROK = CTRL.ipkg_ver_compare(VERINST,">=",CTRL.PRIVOXY_MIN)
-local TITLE = [[</a><a href="javascript:alert(']]
+local TITLE = [[<a href="javascript:alert(']]
.. translate("Version Information")
.. [[\n\nluci-app-privoxy]]
.. [[\n\t]] .. translate("Version") .. [[:\t]]
@@ -26,6 +26,7 @@ local TITLE = [[</a><a href="javascript:alert(']]
.. [[\n\n]]
.. [[')">]]
.. translate("Privoxy WEB proxy")
+ .. [[</a>]]
local DESC = translate("Privoxy is a non-caching web proxy with advanced filtering "
.. "capabilities for enhancing privacy, modifying web page data and HTTP headers, "
diff --git a/applications/luci-app-privoxy/luasrc/view/privoxy/detail_logview.htm b/applications/luci-app-privoxy/luasrc/view/privoxy/detail_logview.htm
index 3e190709fb..ab0019bdd4 100644
--- a/applications/luci-app-privoxy/luasrc/view/privoxy/detail_logview.htm
+++ b/applications/luci-app-privoxy/luasrc/view/privoxy/detail_logview.htm
@@ -6,7 +6,7 @@
var txt = document.getElementById("cbid.privoxy.privoxy._logview.txt"); // TextArea
if ( !txt ) { return; } // security check
var lvXHR = new XHR();
- lvXHR.get('<%=luci.dispatcher.build_url("admin", "services", "privoxy", "logview")%>', null,
+ lvXHR.get('<%=url('admin/services/privoxy/logview')%>', null,
function(x) {
if (x.responseText == "_nodata_")
txt.value = "<%:File not found or empty%>";
diff --git a/applications/luci-app-privoxy/luasrc/view/privoxy/detail_startstop.htm b/applications/luci-app-privoxy/luasrc/view/privoxy/detail_startstop.htm
index b9de8864e4..85975ac7d1 100644
--- a/applications/luci-app-privoxy/luasrc/view/privoxy/detail_startstop.htm
+++ b/applications/luci-app-privoxy/luasrc/view/privoxy/detail_startstop.htm
@@ -21,12 +21,12 @@
function onclick_startstop(id) {
// do start/stop
var btnXHR = new XHR();
- btnXHR.get('<%=luci.dispatcher.build_url("admin", "services", "privoxy", "startstop")%>', null,
+ btnXHR.post('<%=url('admin/services/privoxy/startstop')%>', { token: '<%=token%>' },
function(x) { _data2elements(x); }
);
}
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "services", "privoxy", "status")%>', null,
+ XHR.poll(5, '<%=url('admin/services/privoxy/status')%>', null,
function(x, data) { _data2elements(x); }
);
diff --git a/applications/luci-app-qos/luasrc/model/cbi/qos/qos.lua b/applications/luci-app-qos/luasrc/model/cbi/qos/qos.lua
index a8ea57e311..177b17b07e 100644
--- a/applications/luci-app-qos/luasrc/model/cbi/qos/qos.lua
+++ b/applications/luci-app-qos/luasrc/model/cbi/qos/qos.lua
@@ -41,6 +41,16 @@ t:value("Priority", translate("priority"))
t:value("Express", translate("express"))
t:value("Normal", translate("normal"))
t:value("Bulk", translate("low"))
+
+local uci = require "luci.model.uci"
+uci.cursor():foreach("qos", "class",
+ function (section)
+ local n = section[".name"]
+ if string.sub(n,-string.len("_down"))~="_down" then
+ t:value(n)
+ end
+ end)
+
t.default = "Normal"
srch = s:option(Value, "srchost", translate("Source host"))
diff --git a/applications/luci-app-qos/po/ca/qos.po b/applications/luci-app-qos/po/ca/qos.po
index 7871b12066..e1430f1ad3 100644
--- a/applications/luci-app-qos/po/ca/qos.po
+++ b/applications/luci-app-qos/po/ca/qos.po
@@ -59,9 +59,6 @@ msgstr "QoS"
msgid "Quality of Service"
msgstr "Qualitat de Servei"
-msgid "Service"
-msgstr "Servei"
-
msgid "Source host"
msgstr "Host d'origen"
@@ -97,6 +94,9 @@ msgstr "normal"
msgid "priority"
msgstr "prioritat"
+#~ msgid "Service"
+#~ msgstr "Servei"
+
#~ msgid "Downlink"
#~ msgstr "Enllaç de baixada"
diff --git a/applications/luci-app-qos/po/cs/qos.po b/applications/luci-app-qos/po/cs/qos.po
index 361e4d5426..884310f665 100644
--- a/applications/luci-app-qos/po/cs/qos.po
+++ b/applications/luci-app-qos/po/cs/qos.po
@@ -59,9 +59,6 @@ msgstr "QoS"
msgid "Quality of Service"
msgstr "Quality of Service"
-msgid "Service"
-msgstr "Služba"
-
msgid "Source host"
msgstr "Zdrojová adresa"
@@ -97,6 +94,9 @@ msgstr "normální priorita"
msgid "priority"
msgstr "nejvyšší priorita (malé rámce)"
+#~ msgid "Service"
+#~ msgstr "Služba"
+
#~ msgid "Downlink"
#~ msgstr "Stahování"
diff --git a/applications/luci-app-qos/po/de/qos.po b/applications/luci-app-qos/po/de/qos.po
index 6ba5701fd7..46060de216 100644
--- a/applications/luci-app-qos/po/de/qos.po
+++ b/applications/luci-app-qos/po/de/qos.po
@@ -57,9 +57,6 @@ msgstr "QoS"
msgid "Quality of Service"
msgstr "Quality of Service"
-msgid "Service"
-msgstr "Dienst"
-
msgid "Source host"
msgstr "Quelladresse"
@@ -94,6 +91,9 @@ msgstr "normal"
msgid "priority"
msgstr "Priorität"
+#~ msgid "Service"
+#~ msgstr "Dienst"
+
#~ msgid "Downlink"
#~ msgstr "Downlink"
diff --git a/applications/luci-app-qos/po/el/qos.po b/applications/luci-app-qos/po/el/qos.po
index b417b8b9aa..9c8a9851ad 100644
--- a/applications/luci-app-qos/po/el/qos.po
+++ b/applications/luci-app-qos/po/el/qos.po
@@ -60,9 +60,6 @@ msgstr ""
msgid "Quality of Service"
msgstr "Ποιότητα Υπηρεσίας"
-msgid "Service"
-msgstr "Υπηρεσία"
-
#, fuzzy
msgid "Source host"
msgstr "Διεύθυνση πηγής"
@@ -100,6 +97,9 @@ msgstr "κανονική"
msgid "priority"
msgstr "προτεραιότητα"
+#~ msgid "Service"
+#~ msgstr "Υπηρεσία"
+
#, fuzzy
#~ msgid "Downlink"
#~ msgstr "Ταχύτητα κατεβάσματος"
diff --git a/applications/luci-app-qos/po/en/qos.po b/applications/luci-app-qos/po/en/qos.po
index aeb7b27b29..b20180f0d8 100644
--- a/applications/luci-app-qos/po/en/qos.po
+++ b/applications/luci-app-qos/po/en/qos.po
@@ -53,9 +53,6 @@ msgstr ""
msgid "Quality of Service"
msgstr "Quality of Service"
-msgid "Service"
-msgstr "Service"
-
msgid "Source host"
msgstr "Source host"
@@ -89,3 +86,6 @@ msgstr "normal"
msgid "priority"
msgstr "priority"
+
+#~ msgid "Service"
+#~ msgstr "Service"
diff --git a/applications/luci-app-qos/po/es/qos.po b/applications/luci-app-qos/po/es/qos.po
index 3c8206ddca..83ace8d1f8 100644
--- a/applications/luci-app-qos/po/es/qos.po
+++ b/applications/luci-app-qos/po/es/qos.po
@@ -55,9 +55,6 @@ msgstr "QoS"
msgid "Quality of Service"
msgstr "Calidad de Servicio"
-msgid "Service"
-msgstr "Servicio"
-
msgid "Source host"
msgstr "Máquina origen"
@@ -92,6 +89,9 @@ msgstr "normal"
msgid "priority"
msgstr "prioritario"
+#~ msgid "Service"
+#~ msgstr "Servicio"
+
#~ msgid "Downlink"
#~ msgstr "Enlace de bajada"
diff --git a/applications/luci-app-qos/po/fr/qos.po b/applications/luci-app-qos/po/fr/qos.po
index a4a81f124d..38e9ce8633 100644
--- a/applications/luci-app-qos/po/fr/qos.po
+++ b/applications/luci-app-qos/po/fr/qos.po
@@ -55,9 +55,6 @@ msgstr ""
msgid "Quality of Service"
msgstr "Qualité de service"
-msgid "Service"
-msgstr "Service"
-
msgid "Source host"
msgstr "Hôte source"
@@ -93,5 +90,8 @@ msgstr "normal"
msgid "priority"
msgstr "prioritaire"
+#~ msgid "Service"
+#~ msgstr "Service"
+
#~ msgid "qos_connbytes"
#~ msgstr "qos_connbytes"
diff --git a/applications/luci-app-qos/po/he/qos.po b/applications/luci-app-qos/po/he/qos.po
index 71c2e3c073..e2d42ef014 100644
--- a/applications/luci-app-qos/po/he/qos.po
+++ b/applications/luci-app-qos/po/he/qos.po
@@ -55,9 +55,6 @@ msgstr ""
msgid "Quality of Service"
msgstr ""
-msgid "Service"
-msgstr ""
-
msgid "Source host"
msgstr ""
diff --git a/applications/luci-app-qos/po/hu/qos.po b/applications/luci-app-qos/po/hu/qos.po
index d69ff082a7..c77ac3cd7c 100644
--- a/applications/luci-app-qos/po/hu/qos.po
+++ b/applications/luci-app-qos/po/hu/qos.po
@@ -57,9 +57,6 @@ msgstr "QoS"
msgid "Quality of Service"
msgstr "Quality of Service"
-msgid "Service"
-msgstr "Szolgáltatás"
-
msgid "Source host"
msgstr "Forrás gép"
@@ -95,6 +92,9 @@ msgstr "normál"
msgid "priority"
msgstr "prioritás"
+#~ msgid "Service"
+#~ msgstr "Szolgáltatás"
+
#~ msgid "Downlink"
#~ msgstr "Downlink"
diff --git a/applications/luci-app-qos/po/it/qos.po b/applications/luci-app-qos/po/it/qos.po
index 00fb331b34..686c74519a 100644
--- a/applications/luci-app-qos/po/it/qos.po
+++ b/applications/luci-app-qos/po/it/qos.po
@@ -55,9 +55,6 @@ msgstr "QoS"
msgid "Quality of Service"
msgstr "Qualità del Servizio"
-msgid "Service"
-msgstr "Servizi"
-
msgid "Source host"
msgstr "Host sorgente"
@@ -92,6 +89,9 @@ msgstr "normale"
msgid "priority"
msgstr "priorità"
+#~ msgid "Service"
+#~ msgstr "Servizi"
+
#~ msgid "Downlink"
#~ msgstr "Collegamento discendente"
diff --git a/applications/luci-app-qos/po/ja/qos.po b/applications/luci-app-qos/po/ja/qos.po
index 857cf5b83b..deeb23f60c 100644
--- a/applications/luci-app-qos/po/ja/qos.po
+++ b/applications/luci-app-qos/po/ja/qos.po
@@ -55,9 +55,6 @@ msgstr ""
msgid "Quality of Service"
msgstr "Quality of Service"
-msgid "Service"
-msgstr "サービス"
-
msgid "Source host"
msgstr "送信元ホスト"
@@ -91,3 +88,6 @@ msgstr "標準"
msgid "priority"
msgstr "最優先"
+
+#~ msgid "Service"
+#~ msgstr "サービス"
diff --git a/applications/luci-app-qos/po/ms/qos.po b/applications/luci-app-qos/po/ms/qos.po
index ab30492127..f8d4ab3d25 100644
--- a/applications/luci-app-qos/po/ms/qos.po
+++ b/applications/luci-app-qos/po/ms/qos.po
@@ -54,9 +54,6 @@ msgstr ""
msgid "Quality of Service"
msgstr ""
-msgid "Service"
-msgstr ""
-
msgid "Source host"
msgstr ""
diff --git a/applications/luci-app-qos/po/no/qos.po b/applications/luci-app-qos/po/no/qos.po
index a560b0fa0e..6b390a1d6c 100644
--- a/applications/luci-app-qos/po/no/qos.po
+++ b/applications/luci-app-qos/po/no/qos.po
@@ -50,9 +50,6 @@ msgstr "QoS"
msgid "Quality of Service"
msgstr "Quality of Service"
-msgid "Service"
-msgstr "Service"
-
msgid "Source host"
msgstr "Kilde vert"
@@ -87,6 +84,9 @@ msgstr "normal"
msgid "priority"
msgstr "prioritet"
+#~ msgid "Service"
+#~ msgstr "Service"
+
#~ msgid "Downlink"
#~ msgstr "Nedlinje"
diff --git a/applications/luci-app-qos/po/pl/qos.po b/applications/luci-app-qos/po/pl/qos.po
index 7b740c78f8..3c6a28ccca 100644
--- a/applications/luci-app-qos/po/pl/qos.po
+++ b/applications/luci-app-qos/po/pl/qos.po
@@ -56,9 +56,6 @@ msgstr "QoS"
msgid "Quality of Service"
msgstr "Jakość usługi (ang. Quality of Service)"
-msgid "Service"
-msgstr "Usługa"
-
msgid "Source host"
msgstr "Host źródłowy"
@@ -93,6 +90,9 @@ msgstr "normalny"
msgid "priority"
msgstr "priorytetowy"
+#~ msgid "Service"
+#~ msgstr "Usługa"
+
#~ msgid "Downlink"
#~ msgstr "Ruch przychodzący"
diff --git a/applications/luci-app-qos/po/pt-br/qos.po b/applications/luci-app-qos/po/pt-br/qos.po
index 1ebaea2a2e..43cd6e2a66 100644
--- a/applications/luci-app-qos/po/pt-br/qos.po
+++ b/applications/luci-app-qos/po/pt-br/qos.po
@@ -58,9 +58,6 @@ msgstr "<abbr title=\"Quality of Service, Qualidade de serviço\">QoS</abbr>"
msgid "Quality of Service"
msgstr "Qualidade de Serviço"
-msgid "Service"
-msgstr "Serviço"
-
msgid "Source host"
msgstr "Endereço de origem"
@@ -96,6 +93,9 @@ msgstr "normal"
msgid "priority"
msgstr "prioritário"
+#~ msgid "Service"
+#~ msgstr "Serviço"
+
#~ msgid "Downlink"
#~ msgstr "Link para download"
diff --git a/applications/luci-app-qos/po/pt/qos.po b/applications/luci-app-qos/po/pt/qos.po
index 2299a78484..449ddce4c9 100644
--- a/applications/luci-app-qos/po/pt/qos.po
+++ b/applications/luci-app-qos/po/pt/qos.po
@@ -57,9 +57,6 @@ msgstr "QoS"
msgid "Quality of Service"
msgstr "Qualidade de Serviço"
-msgid "Service"
-msgstr "Serviço"
-
msgid "Source host"
msgstr "Host de origem"
@@ -94,6 +91,9 @@ msgstr "normal"
msgid "priority"
msgstr "prioridade"
+#~ msgid "Service"
+#~ msgstr "Serviço"
+
#~ msgid "Downlink"
#~ msgstr "Link para download"
diff --git a/applications/luci-app-qos/po/ro/qos.po b/applications/luci-app-qos/po/ro/qos.po
index 239c1f8506..9c88f7c2c9 100644
--- a/applications/luci-app-qos/po/ro/qos.po
+++ b/applications/luci-app-qos/po/ro/qos.po
@@ -58,9 +58,6 @@ msgstr "QoS"
msgid "Quality of Service"
msgstr "Quality of Service"
-msgid "Service"
-msgstr "Serviciu"
-
msgid "Source host"
msgstr ""
@@ -93,5 +90,8 @@ msgstr "normala"
msgid "priority"
msgstr "ridicata"
+#~ msgid "Service"
+#~ msgstr "Serviciu"
+
#~ msgid "Internet Connection"
#~ msgstr "Conexiune internet"
diff --git a/applications/luci-app-qos/po/ru/qos.po b/applications/luci-app-qos/po/ru/qos.po
index 6c3639243e..811cbf1e01 100644
--- a/applications/luci-app-qos/po/ru/qos.po
+++ b/applications/luci-app-qos/po/ru/qos.po
@@ -57,9 +57,6 @@ msgstr "QoS"
msgid "Quality of Service"
msgstr "Качество обслуживания (QoS)"
-msgid "Service"
-msgstr "Служба"
-
msgid "Source host"
msgstr "Хост источника"
@@ -94,6 +91,9 @@ msgstr "обычный"
msgid "priority"
msgstr "приоритетный"
+#~ msgid "Service"
+#~ msgstr "Служба"
+
#~ msgid "Downlink"
#~ msgstr "Нисходящий канал"
diff --git a/applications/luci-app-qos/po/sk/qos.po b/applications/luci-app-qos/po/sk/qos.po
index 102e5a94e9..b4d10ab317 100644
--- a/applications/luci-app-qos/po/sk/qos.po
+++ b/applications/luci-app-qos/po/sk/qos.po
@@ -50,9 +50,6 @@ msgstr ""
msgid "Quality of Service"
msgstr ""
-msgid "Service"
-msgstr ""
-
msgid "Source host"
msgstr ""
diff --git a/applications/luci-app-qos/po/sv/qos.po b/applications/luci-app-qos/po/sv/qos.po
index 44f8a351eb..1ba407e4b7 100644
--- a/applications/luci-app-qos/po/sv/qos.po
+++ b/applications/luci-app-qos/po/sv/qos.po
@@ -51,9 +51,6 @@ msgstr ""
msgid "Quality of Service"
msgstr ""
-msgid "Service"
-msgstr ""
-
msgid "Source host"
msgstr ""
diff --git a/applications/luci-app-qos/po/templates/qos.pot b/applications/luci-app-qos/po/templates/qos.pot
index 26ea8f7971..48333e4565 100644
--- a/applications/luci-app-qos/po/templates/qos.pot
+++ b/applications/luci-app-qos/po/templates/qos.pot
@@ -43,9 +43,6 @@ msgstr ""
msgid "Quality of Service"
msgstr ""
-msgid "Service"
-msgstr ""
-
msgid "Source host"
msgstr ""
diff --git a/applications/luci-app-qos/po/tr/qos.po b/applications/luci-app-qos/po/tr/qos.po
index 74647be141..d2f3611cf3 100644
--- a/applications/luci-app-qos/po/tr/qos.po
+++ b/applications/luci-app-qos/po/tr/qos.po
@@ -55,9 +55,6 @@ msgstr ""
msgid "Quality of Service"
msgstr ""
-msgid "Service"
-msgstr ""
-
msgid "Source host"
msgstr ""
diff --git a/applications/luci-app-qos/po/uk/qos.po b/applications/luci-app-qos/po/uk/qos.po
index d48100b121..5ec9f37264 100644
--- a/applications/luci-app-qos/po/uk/qos.po
+++ b/applications/luci-app-qos/po/uk/qos.po
@@ -58,9 +58,6 @@ msgstr "QoS"
msgid "Quality of Service"
msgstr "Якість обслуговування (QoS)"
-msgid "Service"
-msgstr "Сервіс"
-
msgid "Source host"
msgstr "Вихідний вузол"
@@ -96,6 +93,9 @@ msgstr "звичайний"
msgid "priority"
msgstr "пріоритетний"
+#~ msgid "Service"
+#~ msgstr "Сервіс"
+
#~ msgid "Downlink"
#~ msgstr "Низхідний канал"
diff --git a/applications/luci-app-qos/po/vi/qos.po b/applications/luci-app-qos/po/vi/qos.po
index 82492727c9..32e7ed17ab 100644
--- a/applications/luci-app-qos/po/vi/qos.po
+++ b/applications/luci-app-qos/po/vi/qos.po
@@ -60,9 +60,6 @@ msgstr ""
msgid "Quality of Service"
msgstr "Chất lượng dịch vụ "
-msgid "Service"
-msgstr ""
-
#, fuzzy
msgid "Source host"
msgstr "Địa chỉ nguồn"
diff --git a/applications/luci-app-qos/po/zh-cn/qos.po b/applications/luci-app-qos/po/zh-cn/qos.po
index 92ff7d0897..0a5cd6220c 100644
--- a/applications/luci-app-qos/po/zh-cn/qos.po
+++ b/applications/luci-app-qos/po/zh-cn/qos.po
@@ -55,9 +55,6 @@ msgstr "QoS"
msgid "Quality of Service"
msgstr "QOS服务"
-msgid "Service"
-msgstr "服务"
-
msgid "Source host"
msgstr "源主机"
@@ -90,6 +87,9 @@ msgstr "普通"
msgid "priority"
msgstr "最高"
+#~ msgid "Service"
+#~ msgstr "服务"
+
#~ msgid "Downlink"
#~ msgstr "下行"
diff --git a/applications/luci-app-qos/po/zh-tw/qos.po b/applications/luci-app-qos/po/zh-tw/qos.po
index 5cc338bb0d..a011e9ca9a 100644
--- a/applications/luci-app-qos/po/zh-tw/qos.po
+++ b/applications/luci-app-qos/po/zh-tw/qos.po
@@ -53,9 +53,6 @@ msgstr "先進先出頻寬管理"
msgid "Quality of Service"
msgstr "連線品質服務"
-msgid "Service"
-msgstr "服務"
-
msgid "Source host"
msgstr "來源主機"
@@ -90,6 +87,9 @@ msgstr "一般優先權"
msgid "priority"
msgstr "優先權"
+#~ msgid "Service"
+#~ msgstr "服務"
+
#~ msgid "Downlink"
#~ msgstr "下載"
diff --git a/applications/luci-app-radicale/Makefile b/applications/luci-app-radicale/Makefile
index 960618dbac..1501d4f0e8 100644
--- a/applications/luci-app-radicale/Makefile
+++ b/applications/luci-app-radicale/Makefile
@@ -10,7 +10,7 @@ PKG_NAME:=luci-app-radicale
# Version == major.minor.patch
# increase "minor" on new functionality and "patch" on patches/optimization
-PKG_VERSION:=1.0.1
+PKG_VERSION:=1.0.2
# Release == build
# increase on changes of translation files
diff --git a/applications/luci-app-radicale/luasrc/controller/radicale.lua b/applications/luci-app-radicale/luasrc/controller/radicale.lua
index d384b00d9e..10ec1fe545 100644
--- a/applications/luci-app-radicale/luasrc/controller/radicale.lua
+++ b/applications/luci-app-radicale/luasrc/controller/radicale.lua
@@ -15,7 +15,7 @@ function index()
entry( {"admin", "services", "radicale"}, alias("admin", "services", "radicale", "edit"), _("CalDAV/CardDAV"), 58)
entry( {"admin", "services", "radicale", "edit"}, cbi("radicale") ).leaf = true
entry( {"admin", "services", "radicale", "logview"}, call("_logread") ).leaf = true
- entry( {"admin", "services", "radicale", "startstop"}, call("_startstop") ).leaf = true
+ entry( {"admin", "services", "radicale", "startstop"}, post("_startstop") ).leaf = true
entry( {"admin", "services", "radicale", "status"}, call("_status") ).leaf = true
end
@@ -82,7 +82,7 @@ function service_ok()
end
function app_title_main()
- return [[</a><a href="javascript:alert(']]
+ return [[<a href="javascript:alert(']]
.. I18N.translate("Version Information")
.. [[\n\n]] .. luci_app_name()
.. [[\n\t]] .. I18N.translate("Version") .. [[:\t]]
@@ -100,12 +100,14 @@ function app_title_main()
.. [[\n\n]]
.. [[')">]]
.. I18N.translate("Radicale CalDAV/CardDAV Server")
+ .. [[</a>]]
end
function app_title_back()
- return [[</a><a href="]]
+ return [[<a href="]]
.. DISP.build_url("admin", "services", "radicale")
.. [[">]]
.. I18N.translate("Radicale CalDAV/CardDAV Server")
+ .. [[</a>]]
end
function app_description()
return I18N.translate("The Radicale Project is a complete CalDAV (calendar) and CardDAV (contact) server solution.") .. [[<br />]]
diff --git a/applications/luci-app-radicale/luasrc/view/radicale/btn_startstop.htm b/applications/luci-app-radicale/luasrc/view/radicale/btn_startstop.htm
index 79d1c36297..dbf4dddbca 100644
--- a/applications/luci-app-radicale/luasrc/view/radicale/btn_startstop.htm
+++ b/applications/luci-app-radicale/luasrc/view/radicale/btn_startstop.htm
@@ -21,12 +21,12 @@
function onclick_startstop(id) {
// do start/stop
var btnXHR = new XHR();
- btnXHR.get('<%=luci.dispatcher.build_url("admin", "services", "radicale", "startstop")%>', null,
+ btnXHR.post('<%=url('admin/services/radicale/startstop')%>', { token: '<%=token%>' },
function(x) { _data2elements(x); }
);
}
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "services", "radicale", "status")%>', null,
+ XHR.poll(5, '<%=url('admin/services/radicale/status')%>', null,
function(x, data) { _data2elements(x); }
);
diff --git a/applications/luci-app-shadowsocks-libev/po/templates/shadowsocks-libev.pot b/applications/luci-app-shadowsocks-libev/po/templates/shadowsocks-libev.pot
index c2bde961e0..81bbcb72f4 100644
--- a/applications/luci-app-shadowsocks-libev/po/templates/shadowsocks-libev.pot
+++ b/applications/luci-app-shadowsocks-libev/po/templates/shadowsocks-libev.pot
@@ -1,80 +1,86 @@
msgid ""
msgstr "Content-Type: text/plain; charset=UTF-8"
-msgid "ShadowSocks-libev"
+msgid "Access Control"
msgstr ""
-msgid "ShadowSocks-libev is running"
+msgid "Allow all except listed"
msgstr ""
-msgid "ShadowSocks-libev is not running"
+msgid "Allow listed only"
msgstr ""
-msgid "Global Setting"
+msgid "Bypassed IP"
msgstr ""
-msgid "Enable"
+msgid "Connection Timeout"
msgstr ""
-msgid "Enabled"
+msgid "Custom"
msgstr ""
msgid "Disabled"
msgstr ""
-msgid "Custom"
+msgid "Enable"
msgstr ""
-msgid "Server Address"
+msgid "Enabled"
msgstr ""
-msgid "Server Port"
+msgid "Encrypt Method"
msgstr ""
-msgid "Local Port"
+msgid "Forwarded IP"
msgstr ""
-msgid "Connection Timeout"
+msgid "Forwarding Tunnel"
msgstr ""
-msgid "Password"
+msgid "Global Setting"
msgstr ""
-msgid "Encrypt Method"
+msgid "Ignore List"
msgstr ""
-msgid "Ignore List"
+msgid "LAN"
msgstr ""
-msgid "UDP Relay"
+msgid "LAN IP List"
+msgstr ""
+
+msgid "Local Port"
+msgstr ""
+
+msgid "Password"
msgstr ""
msgid "Relay Mode"
msgstr ""
-msgid "UDP Forward"
+msgid "Server Address"
msgstr ""
-msgid "UDP Local Port"
+msgid "Server Port"
msgstr ""
-msgid "Forwarding Tunnel"
+msgid "ShadowSocks-libev"
msgstr ""
-msgid "Access Control"
+msgid "ShadowSocks-libev is not running"
msgstr ""
-msgid "Allow listed only"
+msgid "ShadowSocks-libev is running"
msgstr ""
-msgid "Allow all except listed"
+msgid "UDP Forward"
msgstr ""
-msgid "LAN IP List"
+msgid "UDP Local Port"
msgstr ""
-msgid "Bypassed IP"
+msgid "UDP Relay"
msgstr ""
-msgid "Forwarded IP"
+msgid "WAN"
msgstr ""
diff --git a/applications/luci-app-shadowsocks-libev/po/zh-cn/shadowsocks-libev.po b/applications/luci-app-shadowsocks-libev/po/zh-cn/shadowsocks-libev.po
index 90a0eff996..f86eee7e9f 100644
--- a/applications/luci-app-shadowsocks-libev/po/zh-cn/shadowsocks-libev.po
+++ b/applications/luci-app-shadowsocks-libev/po/zh-cn/shadowsocks-libev.po
@@ -12,17 +12,26 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Pootle 2.0.6\n"
-msgid "ShadowSocks-libev"
-msgstr "ShadowSocks-libev"
+msgid "Access Control"
+msgstr "访问控制"
-msgid "ShadowSocks-libev is running"
-msgstr "ShadowSocks-libev 运行中"
+msgid "Allow all except listed"
+msgstr "仅允许列表外"
-msgid "ShadowSocks-libev is not running"
-msgstr "ShadowSocks-libev 未运行"
+msgid "Allow listed only"
+msgstr "仅允许列表内"
-msgid "Global Setting"
-msgstr "全局设置"
+msgid "Bypassed IP"
+msgstr "被忽略的IP"
+
+msgid "Connection Timeout"
+msgstr "连接超时"
+
+msgid "Custom"
+msgstr "自定义"
+
+msgid "Disabled"
+msgstr "已禁用"
msgid "Enable"
msgstr "启用"
@@ -30,62 +39,59 @@ msgstr "启用"
msgid "Enabled"
msgstr "已启用"
-msgid "Disabled"
-msgstr "已禁用"
+msgid "Encrypt Method"
+msgstr "加密方式"
-msgid "Custom"
-msgstr "自定义"
+msgid "Forwarded IP"
+msgstr "走代理的IP"
-msgid "Server Address"
-msgstr "服务器地址"
+msgid "Forwarding Tunnel"
+msgstr "UDP转发地址"
-msgid "Server Port"
-msgstr "服务器端口"
+msgid "Global Setting"
+msgstr "全局设置"
+
+msgid "Ignore List"
+msgstr "忽略列表"
+
+msgid "LAN"
+msgstr ""
+
+msgid "LAN IP List"
+msgstr "内网IP列表"
msgid "Local Port"
msgstr "本地端口"
-msgid "Connection Timeout"
-msgstr "连接超时"
-
msgid "Password"
msgstr "密码"
-msgid "Encrypt Method"
-msgstr "加密方式"
-
-msgid "Ignore List"
-msgstr "忽略列表"
-
-msgid "UDP Relay"
-msgstr "UDP中继"
-
msgid "Relay Mode"
msgstr "中继模式"
-msgid "UDP Forward"
-msgstr "UDP转发"
+msgid "Server Address"
+msgstr "服务器地址"
-msgid "UDP Local Port"
-msgstr "UDP本地端口"
+msgid "Server Port"
+msgstr "服务器端口"
-msgid "Forwarding Tunnel"
-msgstr "UDP转发地址"
+msgid "ShadowSocks-libev"
+msgstr "ShadowSocks-libev"
-msgid "Access Control"
-msgstr "访问控制"
+msgid "ShadowSocks-libev is not running"
+msgstr "ShadowSocks-libev 未运行"
-msgid "Allow listed only"
-msgstr "仅允许列表内"
+msgid "ShadowSocks-libev is running"
+msgstr "ShadowSocks-libev 运行中"
-msgid "Allow all except listed"
-msgstr "仅允许列表外"
+msgid "UDP Forward"
+msgstr "UDP转发"
-msgid "LAN IP List"
-msgstr "内网IP列表"
+msgid "UDP Local Port"
+msgstr "UDP本地端口"
-msgid "Bypassed IP"
-msgstr "被忽略的IP"
+msgid "UDP Relay"
+msgstr "UDP中继"
-msgid "Forwarded IP"
-msgstr "走代理的IP"
+msgid "WAN"
+msgstr ""
diff --git a/applications/luci-app-splash/luasrc/controller/splash/splash.lua b/applications/luci-app-splash/luasrc/controller/splash/splash.lua
index 4add43559f..13b8edce6d 100644
--- a/applications/luci-app-splash/luasrc/controller/splash/splash.lua
+++ b/applications/luci-app-splash/luasrc/controller/splash/splash.lua
@@ -16,7 +16,7 @@ function index()
node("splash", "splash").target = template("splash_splash/splash")
node("splash", "blocked").target = template("splash/blocked")
- entry({"admin", "status", "splash"}, call("action_status_admin"), _("Client-Splash"))
+ entry({"admin", "status", "splash"}, post("action_status_admin"), _("Client-Splash"))
local page = node("splash", "publicstatus")
page.target = call("action_status_public")
diff --git a/applications/luci-app-splash/luasrc/view/admin_status/splash.htm b/applications/luci-app-splash/luasrc/view/admin_status/splash.htm
index 831fa75f65..3415c205d5 100644
--- a/applications/luci-app-splash/luasrc/view/admin_status/splash.htm
+++ b/applications/luci-app-splash/luasrc/view/admin_status/splash.htm
@@ -210,11 +210,11 @@ end
<div id="cbi-splash-leases" class="cbi-map">
- <h2><a id="content" name="content"><%:Client-Splash%></a></h2>
+ <h2 name="content"><%:Client-Splash%></h2>
<fieldset id="cbi-table-table" class="cbi-section">
<legend><%:Active Clients%></legend>
<div class="cbi-section-node">
- <% if is_admin then %><form action="<%=REQUEST_URI%>" method="post"><% end %>
+ <% if is_admin then %><form action="<%=REQUEST_URI%>" method="post"><input type="hidden" name="token" value="<%=token%>" /><% end %>
<table class="cbi-section-table">
<thead>
<tr class="cbi-section-table-titles">
diff --git a/applications/luci-app-splash/luasrc/view/splash/blocked.htm b/applications/luci-app-splash/luasrc/view/splash/blocked.htm
index 406139b51b..c27e2fab6e 100644
--- a/applications/luci-app-splash/luasrc/view/splash/blocked.htm
+++ b/applications/luci-app-splash/luasrc/view/splash/blocked.htm
@@ -9,7 +9,7 @@ local contacturl = luci.dispatcher.build_url("freifunk", "contact")
<%+header%>
-<h2><a id="content" name="content"><%:Blocked%></a></h2>
+<h2 name="content"><%:Blocked%></h2>
<p><%:Your access to this network has been blocked, most likely because you did something that our rules explicitly forbid.%></p>
<p><%:To ask for the reason why you have been blocked or ask for access again you can try to contact the owner of this access point:%> <a href="<%=contacturl%>"><%:Contact%></a></p>
diff --git a/applications/luci-app-splash/luasrc/view/splash/splash.htm b/applications/luci-app-splash/luasrc/view/splash/splash.htm
index 7626b600dc..8d84463ef7 100644
--- a/applications/luci-app-splash/luasrc/view/splash/splash.htm
+++ b/applications/luci-app-splash/luasrc/view/splash/splash.htm
@@ -72,7 +72,7 @@ if has_custom_splash then
<% else %>
- <h2><a id="content" name="content"><%:Welcome%></a></h2>
+ <h2 name="content"><%:Welcome%></h2>
<p><%:You are now connected to the free wireless mesh network%> <a href="<%=homepage%>"><%=community%></a>.
<%:Please note that we are not an internet service provider but an experimental community network.%></p>
diff --git a/applications/luci-app-statistics/luasrc/controller/luci_statistics/luci_statistics.lua b/applications/luci-app-statistics/luasrc/controller/luci_statistics/luci_statistics.lua
index 49eab5acd4..3f26aeed6f 100644
--- a/applications/luci-app-statistics/luasrc/controller/luci_statistics/luci_statistics.lua
+++ b/applications/luci-app-statistics/luasrc/controller/luci_statistics/luci_statistics.lua
@@ -20,7 +20,7 @@ function index()
local labels = {
s_output = _("Output plugins"),
- s_system = _("System plugins"),
+ s_general = _("General plugins"),
s_network = _("Network plugins"),
conntrack = _("Conntrack"),
@@ -42,9 +42,11 @@ function index()
network = _("Network"),
nut = _("UPS"),
olsrd = _("OLSRd"),
+ openvpn = _("OpenVPN"),
ping = _("Ping"),
processes = _("Processes"),
rrdtool = _("RRDTool"),
+ sensors = _("Sensors"),
splash_leases = _("Splash Leases"),
tcpconns = _("TCP Connections"),
unixsock = _("UnixSock"),
@@ -54,15 +56,15 @@ function index()
-- our collectd menu
local collectd_menu = {
output = { "csv", "network", "rrdtool", "unixsock" },
- system = { "cpu", "df", "disk", "email", "entropy", "exec", "irq", "load", "memory", "nut", "processes", "uptime" },
- network = { "conntrack", "dns", "interface", "iptables", "netlink", "olsrd", "ping", "splash_leases", "tcpconns", "iwinfo" }
+ general = { "cpu", "df", "disk", "email", "entropy", "exec", "irq", "load", "memory", "nut", "processes", "sensors", "uptime" },
+ network = { "conntrack", "dns", "interface", "iptables", "netlink", "olsrd", "openvpn", "ping", "splash_leases", "tcpconns", "iwinfo" }
}
-- create toplevel menu nodes
local st = entry({"admin", "statistics"}, template("admin_statistics/index"), _("Statistics"), 80)
st.index = true
- entry({"admin", "statistics", "collectd"}, cbi("luci_statistics/collectd"), _("Collectd"), 10).subindex = true
+ entry({"admin", "statistics", "collectd"}, cbi("luci_statistics/collectd"), _("Setup"), 20).subindex = true
-- populate collectd plugin menu
@@ -87,7 +89,7 @@ function index()
end
-- output views
- local page = entry( { "admin", "statistics", "graph" }, template("admin_statistics/index"), _("Graphs"), 80)
+ local page = entry( { "admin", "statistics", "graph" }, template("admin_statistics/index"), _("Graphs"), 10)
page.setuser = "nobody"
page.setgroup = "nogroup"
@@ -170,7 +172,7 @@ function statistics_render()
if #instances == 0 then
--instances = { graph.tree:plugin_instances( plugin )[1] }
instances = graph.tree:plugin_instances( plugin )
- is_index = true
+ is_index = (#instances > 1)
-- index instance requested
elseif instances[1] == "-" then
diff --git a/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/network.lua b/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/network.lua
index 54b15de83f..547badf568 100644
--- a/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/network.lua
+++ b/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/network.lua
@@ -6,7 +6,7 @@ m = Map("luci_statistics",
translate(
"The network plugin provides network based communication between " ..
"different collectd instances. Collectd can operate both in client " ..
- "and server mode. In client mode locally collected date is " ..
+ "and server mode. In client mode locally collected data is " ..
"transferred to a collectd server instance, in server mode the " ..
"local instance receives data from other hosts."
))
diff --git a/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/openvpn.lua b/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/openvpn.lua
new file mode 100644
index 0000000000..193f0448ae
--- /dev/null
+++ b/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/openvpn.lua
@@ -0,0 +1,56 @@
+-- Copyright 2015 Jo-Philipp Wich <jow@openwrt.org>
+-- Licensed to the public under the Apache License 2.0.
+
+require "luci.sys"
+
+local m, s, o
+
+
+m = Map("luci_statistics",
+ translate("OpenVPN Plugin Configuration"),
+ translate("The OpenVPN plugin gathers information about the current vpn connection status."))
+
+s = m:section( NamedSection, "collectd_openvpn", "luci_statistics" )
+
+
+o = s:option( Flag, "enable", translate("Enable this plugin") )
+o.default = "0"
+
+
+o = s:option(Flag, "CollectIndividualUsers", translate("Generate a separate graph for each logged user"))
+o.default = "0"
+o.rmempty = true
+o:depends("enable", 1)
+
+
+o = s:option(Flag, "CollectUserCount", translate("Aggregate number of connected users"))
+o.default = "0"
+o.rmempty = true
+o:depends("enable", 1)
+
+
+o = s:option(Flag, "CollectCompression", translate("Gather compression statistics"))
+o.default = "0"
+o.rmempty = true
+o:depends("enable", 1)
+
+
+o = s:option(Flag, "ImprovedNamingSchema", translate("Use improved naming schema"))
+o.default = "0"
+o.rmempty = true
+o:depends("enable", 1)
+
+
+o = s:option(DynamicList, "StatusFile", translate("OpenVPN status files"))
+o.rmempty = true
+o:depends("enable", 1)
+
+local status_files = nixio.fs.glob("/var/run/openvpn.*.status")
+if status_files then
+ local status_file
+ for status_file in status_files do
+ o:value(status_file)
+ end
+end
+
+return m
diff --git a/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/sensors.lua b/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/sensors.lua
new file mode 100644
index 0000000000..77e36bfaff
--- /dev/null
+++ b/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/sensors.lua
@@ -0,0 +1,125 @@
+-- Copyright 2015 Jo-Philipp Wich <jow@openwrt.org>
+-- Licensed to the public under the Apache License 2.0.
+
+require "luci.sys"
+
+local m, s, o
+local sensor_types = {
+ ["12v"] = "voltage",
+ ["2.0v"] = "voltage",
+ ["2.5v"] = "voltage",
+ ["3.3v"] = "voltage",
+ ["5.0v"] = "voltage",
+ ["5v"] = "voltage",
+ ["ain1"] = "voltage",
+ ["ain2"] = "voltage",
+ ["cpu_temp"] = "temperature",
+ ["fan1"] = "fanspeed",
+ ["fan2"] = "fanspeed",
+ ["fan3"] = "fanspeed",
+ ["fan4"] = "fanspeed",
+ ["fan5"] = "fanspeed",
+ ["fan6"] = "fanspeed",
+ ["fan7"] = "fanspeed",
+ ["in0"] = "voltage",
+ ["in10"] = "voltage",
+ ["in2"] = "voltage",
+ ["in3"] = "voltage",
+ ["in4"] = "voltage",
+ ["in5"] = "voltage",
+ ["in6"] = "voltage",
+ ["in7"] = "voltage",
+ ["in8"] = "voltage",
+ ["in9"] = "voltage",
+ ["power1"] = "power",
+ ["remote_temp"] = "temperature",
+ ["temp1"] = "temperature",
+ ["temp2"] = "temperature",
+ ["temp3"] = "temperature",
+ ["temp4"] = "temperature",
+ ["temp5"] = "temperature",
+ ["temp6"] = "temperature",
+ ["temp7"] = "temperature",
+ ["temp"] = "temperature",
+ ["vccp1"] = "voltage",
+ ["vccp2"] = "voltage",
+ ["vdd"] = "voltage",
+ ["vid1"] = "voltage",
+ ["vid2"] = "voltage",
+ ["vid3"] = "voltage",
+ ["vid4"] = "voltage",
+ ["vid5"] = "voltage",
+ ["vid"] = "voltage",
+ ["vin1"] = "voltage",
+ ["vin2"] = "voltage",
+ ["vin3"] = "voltage",
+ ["vin4"] = "voltage",
+ ["volt12"] = "voltage",
+ ["volt5"] = "voltage",
+ ["voltbatt"] = "voltage",
+ ["vrm"] = "voltage"
+
+}
+
+
+m = Map("luci_statistics",
+ translate("Sensors Plugin Configuration"),
+ translate("The sensors plugin uses the Linux Sensors framework to gather environmental statistics."))
+
+s = m:section( NamedSection, "collectd_sensors", "luci_statistics" )
+
+
+o = s:option( Flag, "enable", translate("Enable this plugin") )
+o.default = 0
+
+
+o = s:option(Flag, "__all", translate("Monitor all sensors"))
+o:depends("enable", 1)
+o.default = 1
+o.write = function() end
+o.cfgvalue = function(self, sid)
+ local v = self.map:get(sid, "Sensor")
+ if v == nil or (type(v) == "table" and #v == 0) or (type(v) == "string" and #v == 0) then
+ return "1"
+ end
+end
+
+
+o = s:option(MultiValue, "Sensor", translate("Sensor list"), translate("Hold Ctrl to select multiple items or to deselect entries."))
+o:depends({enable = 1, __all = "" })
+o.widget = "select"
+o.rmempty = true
+o.size = 0
+
+local sensorcli = io.popen("/usr/sbin/sensors -u -A")
+if sensorcli then
+ local bus, sensor
+
+ while true do
+ local ln = sensorcli:read("*ln")
+ if not ln then
+ break
+ elseif ln:match("^[%w-]+$") then
+ bus = ln
+ elseif ln:match("^[%w-]+:$") then
+ sensor = ln:sub(0, -2):lower()
+ if bus and sensor_types[sensor] then
+ o:value("%s/%s-%s" %{ bus, sensor_types[sensor], sensor })
+ o.size = o.size + 1
+ end
+ elseif ln == "" then
+ bus = nil
+ sensor = nil
+ end
+ end
+
+ sensorcli:close()
+end
+
+
+o = s:option( Flag, "IgnoreSelected", translate("Monitor all except specified") )
+o.default = 0
+o.rmempty = true
+o:depends({ enable = 1, __all = "" })
+
+return m
diff --git a/applications/luci-app-statistics/luasrc/statistics/i18n.lua b/applications/luci-app-statistics/luasrc/statistics/i18n.lua
index 5a2800d5f4..7877e61ab3 100644
--- a/applications/luci-app-statistics/luasrc/statistics/i18n.lua
+++ b/applications/luci-app-statistics/luasrc/statistics/i18n.lua
@@ -26,15 +26,6 @@ function Instance._subst( self, str, val )
return str
end
-function Instance._translate( self, key, alt )
- local val = self.i18n.string(key)
- if val ~= key then
- return val
- else
- return alt
- end
-end
-
function Instance.title( self, plugin, pinst, dtype, dinst, user_title )
local title = user_title or
@@ -73,24 +64,17 @@ end
function Instance.ds( self, source )
- local label = source.title or self:_translate(
- string.format( "stat_ds_%s_%s_%s", source.type, source.instance, source.ds ),
- self:_translate(
- string.format( "stat_ds_%s_%s", source.type, source.instance ),
- self:_translate(
- string.format( "stat_ds_label_%s__%s", source.type, source.ds ),
- self:_translate(
- string.format( "stat_ds_%s", source.type ),
- source.type .. "_" .. source.instance:gsub("[^%w]","_") .. "_" .. source.ds
- )
- )
- )
- )
+ local label = source.title or
+ "dt=%s/di=%s/ds=%s" % {
+ (source.type and #source.type > 0) and source.type or "(nil)",
+ (source.instance and #source.instance > 0) and source.instance or "(nil)",
+ (source.ds and #source.ds > 0) and source.ds or "(nil)"
+ }
return self:_subst( label, {
dtype = source.type,
dinst = source.instance,
dsrc = source.ds
- } )
+ } ):gsub(":", "\\:")
end
diff --git a/applications/luci-app-statistics/luasrc/statistics/rrdtool.lua b/applications/luci-app-statistics/luasrc/statistics/rrdtool.lua
index d8317a8177..5d4ad9859d 100644
--- a/applications/luci-app-statistics/luasrc/statistics/rrdtool.lua
+++ b/applications/luci-app-statistics/luasrc/statistics/rrdtool.lua
@@ -397,6 +397,7 @@ function Graph._generic( self, opts, plugin, plugin_instance, dtype, index )
transform_rpn = dopts.transform_rpn or "0,+",
noarea = dopts.noarea or false,
title = dopts.title or nil,
+ weight = dopts.weight or nil,
ds = dsource,
type = dtype,
instance = dinst,
@@ -469,6 +470,12 @@ function Graph._generic( self, opts, plugin, plugin_instance, dtype, index )
for i, o in ipairs(opts.rrdopts) do _ti( _args, o ) end
end
+ -- sort sources
+ table.sort(_sources, function(a, b)
+ local x = a.weight or a.index or 0
+ local y = b.weight or b.index or 0
+ return x < y
+ end)
-- create DEF statements for each instance
for i, source in ipairs(_sources) do
diff --git a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/interface.lua b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/interface.lua
index efa631d557..6f687d218d 100644
--- a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/interface.lua
+++ b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/interface.lua
@@ -66,36 +66,40 @@ function rrdargs( graph, plugin, plugin_instance )
options = {
-- processed packets (tx DS)
if_packets__tx = {
+ weight = 1,
overlay = true, -- don't summarize
total = true, -- report total amount of bytes
color = "00ff00", -- processed tx is green
- title = "Processed (tx)"
+ title = "Processed (TX)"
},
-- processed packets (rx DS)
if_packets__rx = {
+ weight = 2,
overlay = true, -- don't summarize
flip = true, -- flip rx line
total = true, -- report total amount of bytes
color = "0000ff", -- processed rx is blue
- title = "Processed (rx)"
+ title = "Processed (RX)"
},
-- packet errors (tx DS)
if_errors__tx = {
+ weight = 0,
overlay = true, -- don't summarize
total = true, -- report total amount of packets
color = "ff5500", -- tx errors are orange
- title = "Errors (tx)"
+ title = "Errors (TX)"
},
-- packet errors (rx DS)
if_errors__rx = {
+ weight = 3,
overlay = true, -- don't summarize
flip = true, -- flip rx line
total = true, -- report total amount of packets
color = "ff0000", -- rx errors are red
- title = "Errors (rx)"
+ title = "Errors (RX)"
}
}
}
diff --git a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/iwinfo.lua b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/iwinfo.lua
index 3ca3381ec4..194afd6fc0 100644
--- a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/iwinfo.lua
+++ b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/iwinfo.lua
@@ -74,6 +74,8 @@ function rrdargs( graph, plugin, plugin_instance )
local stations = {
title = "%H: Associated stations on %pi",
vlabel = "Stations",
+ y_min = "0",
+ alt_autoscale_max = true,
number_format = "%3.0lf",
data = {
types = { "stations" },
diff --git a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/netlink.lua b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/netlink.lua
index b4f2ac185e..7b6acf3663 100644
--- a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/netlink.lua
+++ b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/netlink.lua
@@ -22,11 +22,13 @@ function rrdargs( graph, plugin, plugin_instance )
-- special options for single data lines
options = {
if_octets__tx = {
+ title = "Bytes (TX)",
total = true, -- report total amount of bytes
color = "00ff00" -- tx is green
},
if_octets__rx = {
+ title = "Bytes (RX)",
flip = true, -- flip rx line
total = true, -- report total amount of bytes
color = "0000ff" -- rx is blue
@@ -59,6 +61,8 @@ function rrdargs( graph, plugin, plugin_instance )
options = {
-- processed packets (tx DS)
if_packets__tx = {
+ weight = 2,
+ title = "Total (TX)",
overlay = true, -- don't summarize
total = true, -- report total amount of bytes
color = "00ff00" -- processed tx is green
@@ -66,6 +70,8 @@ function rrdargs( graph, plugin, plugin_instance )
-- processed packets (rx DS)
if_packets__rx = {
+ weight = 3,
+ title = "Total (RX)",
overlay = true, -- don't summarize
flip = true, -- flip rx line
total = true, -- report total amount of bytes
@@ -74,6 +80,8 @@ function rrdargs( graph, plugin, plugin_instance )
-- dropped packets (tx DS)
if_dropped__tx = {
+ weight = 1,
+ title = "Dropped (TX)",
overlay = true, -- don't summarize
total = true, -- report total amount of bytes
color = "660055" -- dropped tx is ... dunno ;)
@@ -81,14 +89,18 @@ function rrdargs( graph, plugin, plugin_instance )
-- dropped packets (rx DS)
if_dropped__rx = {
+ weight = 4,
+ title = "Dropped (RX)",
overlay = true, -- don't summarize
flip = true, -- flip rx line
total = true, -- report total amount of bytes
- color = "440066" -- dropped rx is violett
+ color = "ff00ff" -- dropped rx is violett
},
-- packet errors (tx DS)
if_errors__tx = {
+ weight = 0,
+ title = "Errors (TX)",
overlay = true, -- don't summarize
total = true, -- report total amount of packets
color = "ff5500" -- tx errors are orange
@@ -96,6 +108,8 @@ function rrdargs( graph, plugin, plugin_instance )
-- packet errors (rx DS)
if_errors__rx = {
+ weight = 5,
+ title = "Errors (RX)",
overlay = true, -- don't summarize
flip = true, -- flip rx line
total = true, -- report total amount of packets
@@ -122,6 +136,7 @@ function rrdargs( graph, plugin, plugin_instance )
options = {
-- multicast packets
if_multicast = {
+ title = "Packets",
total = true, -- report total amount of packets
color = "0000ff" -- multicast is blue
}
@@ -146,6 +161,7 @@ function rrdargs( graph, plugin, plugin_instance )
options = {
-- collision rate
if_collisions = {
+ title = "Collisions",
total = true, -- report total amount of packets
color = "ff0000" -- collsions are red
}
@@ -173,15 +189,19 @@ function rrdargs( graph, plugin, plugin_instance )
},
-- special options for single data lines
- options = { -- XXX: fixme (define colors...)
- if_tx_errors = {
- total = true
- },
-
- if_rx_errors = {
- flip = true,
- total = true
- }
+ options = {
+ if_tx_errors_aborted_value = { total = true, color = "ffff00", title = "Aborted (TX)" },
+ if_tx_errors_carrier_value = { total = true, color = "ffcc00", title = "Carrier (TX)" },
+ if_tx_errors_fifo_value = { total = true, color = "ff9900", title = "Fifo (TX)" },
+ if_tx_errors_heartbeat_value = { total = true, color = "ff6600", title = "Heartbeat (TX)" },
+ if_tx_errors_window_value = { total = true, color = "ff3300", title = "Window (TX)" },
+
+ if_rx_errors_length_value = { flip = true, total = true, color = "ff0000", title = "Length (RX)" },
+ if_rx_errors_missed_value = { flip = true, total = true, color = "ff0033", title = "Missed (RX)" },
+ if_rx_errors_over_value = { flip = true, total = true, color = "ff0066", title = "Over (RX)" },
+ if_rx_errors_crc_value = { flip = true, total = true, color = "ff0099", title = "CRC (RX)" },
+ if_rx_errors_fifo_value = { flip = true, total = true, color = "ff00cc", title = "Fifo (RX)" },
+ if_rx_errors_frame_value = { flip = true, total = true, color = "ff00ff", title = "Frame (RX)" }
}
}
}
diff --git a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/nut.lua b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/nut.lua
index 6dc81bc1d7..8b04ab8b38 100644
--- a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/nut.lua
+++ b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/nut.lua
@@ -44,9 +44,6 @@ function rrdargs( graph, plugin, plugin_instance, dtype )
y_max = "100",
number_format = "%5.1lf%%",
data = {
- sources = {
- percent = { "percent" }
- },
instances = {
percent = "charge"
},
@@ -77,9 +74,6 @@ function rrdargs( graph, plugin, plugin_instance, dtype )
vlabel = "Minutes",
number_format = "%.1lfm",
data = {
- sources = {
- timeleft = { "timeleft" }
- },
instances = {
timeleft = { "battery" }
},
diff --git a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/openvpn.lua b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/openvpn.lua
new file mode 100644
index 0000000000..876e871d1d
--- /dev/null
+++ b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/openvpn.lua
@@ -0,0 +1,48 @@
+-- Copyright 2015 Jo-Philipp Wich <jow@openwrt.org>
+-- Licensed to the public under the Apache License 2.0.
+
+module("luci.statistics.rrdtool.definitions.openvpn", package.seeall)
+
+function rrdargs( graph, plugin, plugin_instance )
+ local inst = plugin_instance:gsub("^openvpn%.(.+)%.status$", "%1")
+
+ return {
+ {
+ title = "%%H: OpenVPN \"%s\" - Traffic" % inst,
+ vlabel = "Bytes/s",
+ data = {
+ instances = {
+ if_octets = { "traffic", "overhead" }
+ },
+ sources = {
+ if_octets = { "tx", "rx" }
+ },
+ options = {
+ if_octets_traffic_tx = { weight = 0, title = "Bytes (TX)", total = true, color = "00ff00" },
+ if_octets_overhead_tx = { weight = 1, title = "Overhead (TX)", total = true, color = "ff9900" },
+ if_octets_overhead_rx = { weight = 2, title = "Overhead (RX)", total = true, flip = true, color = "ff00ff" },
+ if_octets_traffic_rx = { weight = 3, title = "Bytes (RX)", total = true, flip = true, color = "0000ff" }
+ }
+ }
+ },
+
+ {
+ title = "%%H: OpenVPN \"%s\" - Compression" % inst,
+ vlabel = "Bytes/s",
+ data = {
+ instances = {
+ compression = { "data_out", "data_in" }
+ },
+ sources = {
+ compression = { "uncompressed", "compressed" }
+ },
+ options = {
+ compression_data_out_uncompressed = { weight = 0, title = "Uncompressed (TX)", total = true, color = "00ff00" },
+ compression_data_out_compressed = { weight = 1, title = "Compressed (TX)", total = true, color = "008800" },
+ compression_data_in_compressed = { weight = 2, title = "Compressed (RX)", total = true, flip = true, color = "000088" },
+ compression_data_in_uncompressed = { weight = 3, title = "Uncompressed (RX)", total = true, flip = true, color = "0000ff" }
+ }
+ }
+ }
+ }
+end
diff --git a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/ping.lua b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/ping.lua
index 347d756f7c..f0a5948169 100644
--- a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/ping.lua
+++ b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/ping.lua
@@ -6,24 +6,33 @@ module("luci.statistics.rrdtool.definitions.ping", package.seeall)
function rrdargs( graph, plugin, plugin_instance, dtype )
return {
-- Ping roundtrip time
- { title = "%H: ICMP Round Trip Time", vlabel = "ms",
- number_format = "%5.1lf ms", data = {
+ { title = "%H: ICMP Round Trip Time",
+ vlabel = "ms",
+ number_format = "%5.1lf ms",
+ data = {
sources = { ping = { "value" } },
- options = { ping__value = { noarea = true, title = "%di" } }
+ options = { ping__value = {
+ noarea = true, overlay = true, title = "%di" } }
} },
-- Ping droprate
- { title = "%H: ICMP Drop Rate", vlabel = "%",
- number_format = "%5.2lf %%", data = {
+ { title = "%H: ICMP Drop Rate",
+ vlabel = "%",
+ number_format = "%5.2lf %%",
+ data = {
types = { "ping_droprate" },
- options = { ping_droprate = { title = "%di" } }
+ options = { ping_droprate = {
+ noarea = true, overlay = true, title = "%di" } }
} },
-- Ping standard deviation
- { title = "%H: ICMP Standard Deviation", vlabel = "ms",
- number_format = "%5.2lf ms", data = {
+ { title = "%H: ICMP Standard Deviation",
+ vlabel = "ms",
+ number_format = "%5.2lf ms",
+ data = {
types = { "ping_stddev" },
- options = { ping_stddev = { title = "%di" } }
+ options = { ping_stddev = {
+ noarea = true, overlay = true, title = "%di" } }
} },
}
end
diff --git a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/sensors.lua b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/sensors.lua
new file mode 100644
index 0000000000..f8bddb96e3
--- /dev/null
+++ b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/sensors.lua
@@ -0,0 +1,24 @@
+-- Copyright 2015 Jo-Philipp Wich <jow@openwrt.org>
+-- Licensed to the public under the Apache License 2.0.
+
+module("luci.statistics.rrdtool.definitions.sensors", package.seeall)
+
+function rrdargs( graph, plugin, plugin_instance )
+ return {
+ {
+ per_instance = true,
+ title = "%H: %pi - %di",
+ vlabel = "\176C",
+ number_format = "%4.1lf\176C",
+ data = {
+ types = { "temperature" },
+ options = {
+ temperature__value = {
+ color = "ff0000",
+ title = "Temperature"
+ }
+ }
+ }
+ }
+ }
+end
diff --git a/applications/luci-app-statistics/luasrc/view/admin_statistics/index.htm b/applications/luci-app-statistics/luasrc/view/admin_statistics/index.htm
index 0fb3d56375..38271995ed 100644
--- a/applications/luci-app-statistics/luasrc/view/admin_statistics/index.htm
+++ b/applications/luci-app-statistics/luasrc/view/admin_statistics/index.htm
@@ -6,7 +6,7 @@
<%+header%>
-<h2><a id="content" name="content"><%:Statistics%></a></h2>
+<h2 name="content"><%:Statistics%></h2>
<p><%_The statistics package uses <a href="https://collectd.org/">Collectd</a>
to gather data and <a href="http://oss.oetiker.ch/rrdtool/">RRDtool</a> to
diff --git a/applications/luci-app-statistics/luasrc/view/public_statistics/graph.htm b/applications/luci-app-statistics/luasrc/view/public_statistics/graph.htm
index 77169518d2..ebc78badb0 100644
--- a/applications/luci-app-statistics/luasrc/view/public_statistics/graph.htm
+++ b/applications/luci-app-statistics/luasrc/view/public_statistics/graph.htm
@@ -6,7 +6,7 @@
<%+header%>
-<h2><a id="content" name="content"><%:Statistics%></a></h2>
+<h2 name="content"><%:Statistics%></h2>
<form action="" method="get">
<select name="host">
diff --git a/applications/luci-app-statistics/po/ca/statistics.po b/applications/luci-app-statistics/po/ca/statistics.po
index aa32af5e98..5ccaa4a409 100644
--- a/applications/luci-app-statistics/po/ca/statistics.po
+++ b/applications/luci-app-statistics/po/ca/statistics.po
@@ -30,6 +30,9 @@ msgstr "Afegeix múltiples hosts separats per espai."
msgid "Add notification command"
msgstr "Afegeix ordre de notificació"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Directori base"
@@ -63,9 +66,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Configuració Collectd"
@@ -132,6 +132,12 @@ msgstr "Adreça electrònica"
msgid "Enable this plugin"
msgstr "Activa aquest connector"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -150,6 +156,15 @@ msgstr "Neteja la memòria cau després de"
msgid "Forwarding between listen and server addresses"
msgstr "Readreçant entre adreces que reben connexions i adreces de servidors"
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Gràfics"
@@ -179,6 +194,9 @@ msgstr ""
"Ací pots definir diversos criteris pels que es seleccionaran les regles "
"iptables monitoritzades ."
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr "Host"
@@ -242,6 +260,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr "Monitoritza tots els ports locals que reben connexions"
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Monitoritza dispositius"
@@ -305,6 +326,15 @@ msgstr "Configuració del connector OLSRd"
msgid "Only create average RRAs"
msgstr "Crea només RRAs mitjans"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "Opcions"
@@ -362,12 +392,24 @@ msgstr ""
msgid "Seconds"
msgstr "Segons"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "Màquina servidor"
msgid "Server port"
msgstr "Port del servidor"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr "Monitoreig de classe shaping"
@@ -418,9 +460,6 @@ msgstr "Marques de temps emmagatzemades"
msgid "System Load"
msgstr "Càrrega de sistema"
-msgid "System plugins"
-msgstr "Connectors de sistema"
-
msgid "TCP Connections"
msgstr "Connexions TCP"
@@ -445,6 +484,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -492,6 +536,9 @@ msgstr ""
"es fa servir en conjunció amb Mail::SpamAssassin::Plugin. Plugin::Collectd "
"també es pot utilitzar d'altres maneres."
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -545,7 +592,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
"El connector de xarxa proporciona comunicacions basades en xarxa entre "
@@ -580,19 +627,20 @@ msgstr ""
"Això pot inutilitzar el dispositiu!</strong>"
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"El paquet d'estadísitiques està basat en <a href=\"http://collectd.org/index."
-"shtml\">Collectd</a> i utilitza l'eina <a href=\"http://oss.oetiker.ch/"
-"rrdtool/\">RRD</a> per renderitzar imatges de diagrama de les dades "
-"recoliildes."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -648,6 +696,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Fitxer PID usat"
@@ -663,6 +714,10 @@ msgstr "Wireless"
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "p.e. br-ff"
@@ -684,6 +739,22 @@ msgstr "segons; múltiples separats per espais"
msgid "server interfaces"
msgstr "interfícies de servidor"
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "Connectors de sistema"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "El paquet d'estadísitiques està basat en <a href=\"http://collectd.org/"
+#~ "index.shtml\">Collectd</a> i utilitza l'eina <a href=\"http://oss.oetiker."
+#~ "ch/rrdtool/\">RRD</a> per renderitzar imatges de diagrama de les dades "
+#~ "recoliildes."
+
#~ msgid ""
#~ "The wireless plugin collects statistics about wireless signal strength, "
#~ "noise and quality."
diff --git a/applications/luci-app-statistics/po/cs/statistics.po b/applications/luci-app-statistics/po/cs/statistics.po
index 8a512592e1..bfa1b899ba 100644
--- a/applications/luci-app-statistics/po/cs/statistics.po
+++ b/applications/luci-app-statistics/po/cs/statistics.po
@@ -26,6 +26,9 @@ msgstr "Přidat více hostů, oddělených mezerou"
msgid "Add notification command"
msgstr "Přidat příkaz pro upozornění"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Základní adresář"
@@ -59,9 +62,6 @@ msgstr "CollectRoutes"
msgid "CollectTopology"
msgstr "CollectTopology"
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Nastavení Collectd"
@@ -128,6 +128,12 @@ msgstr "Email"
msgid "Enable this plugin"
msgstr "Povolit tento plugin"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -146,6 +152,15 @@ msgstr "Vyprázdnit cache po"
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Grafy"
@@ -173,6 +188,9 @@ msgstr ""
"Zde můžete definovat různá kritéria, podle kterých budou vybrána sledovaná "
"pravidla iptables."
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr "Hostitel"
@@ -237,6 +255,9 @@ msgstr "Sledovat vše kromě vybraných"
msgid "Monitor all local listen ports"
msgstr "Monitorovat všechny naslouchající porty"
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Sledovat zařízení"
@@ -300,6 +321,15 @@ msgstr "Nastavení pluginu OLSRd"
msgid "Only create average RRAs"
msgstr ""
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "Možnosti"
@@ -358,12 +388,24 @@ msgstr "Skript"
msgid "Seconds"
msgstr "Sekundy"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "Hostitel serveru"
msgid "Server port"
msgstr "Port serveru"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -412,9 +454,6 @@ msgstr ""
msgid "System Load"
msgstr "Zatížení systému"
-msgid "System plugins"
-msgstr "Systémové pluginy"
-
msgid "TCP Connections"
msgstr "TCP spojení"
@@ -439,6 +478,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr "Plugin Conntrack shromažďuje statistiky o počtu sledovaných spojení."
@@ -485,6 +529,9 @@ msgstr ""
"použití ve spojení s Mail::SpamAssasin::Plugin::Collectd, ale stejně dobře "
"může být využit jinak."
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -532,7 +579,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
"Plugin Network poskytuje síťovou komunikaci mezi různými instancemi daemonu "
@@ -566,18 +613,20 @@ msgstr ""
"</strong>"
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"Balíček Statistiky je založen na <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> a využívá <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> pro kreslení diagramů z collectd."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -631,6 +680,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Použitý soubor PID (identifikátoru procesu)"
@@ -646,6 +698,10 @@ msgstr "Wireless"
msgid "Wireless iwinfo Plugin Configuration"
msgstr "Nastavení pluginu Wireless Iwinfo"
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "např. br-ff"
@@ -667,6 +723,21 @@ msgstr "sekundy, více hodnot oddělených mezerou"
msgid "server interfaces"
msgstr "rozhraní serveru"
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "Systémové pluginy"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "Balíček Statistiky je založen na <a href=\"http://collectd.org/index.shtml"
+#~ "\">Collectd</a> a využívá <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
+#~ "Tool</a> pro kreslení diagramů z collectd."
+
#~ msgid "Installed network plugins:"
#~ msgstr "Instalované síťové pluginy:"
diff --git a/applications/luci-app-statistics/po/de/statistics.po b/applications/luci-app-statistics/po/de/statistics.po
index 0ed0636aa2..91baf0e064 100644
--- a/applications/luci-app-statistics/po/de/statistics.po
+++ b/applications/luci-app-statistics/po/de/statistics.po
@@ -28,6 +28,9 @@ msgstr "Mehrere Hosts durch Leerzeichen getrennt hinzufuegen"
msgid "Add notification command"
msgstr "Benachrichtigungskommando hinzufügen"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Basisverzeichnis"
@@ -61,9 +64,6 @@ msgstr "Informationen über Routen sammeln (CollectRoutes)"
msgid "CollectTopology"
msgstr "Informationen über die Netzwerktopologie sammeln (CollectTopology)"
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Collectd Einstellungen"
@@ -130,6 +130,12 @@ msgstr "Email"
msgid "Enable this plugin"
msgstr "Plugin aktivieren"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -148,6 +154,15 @@ msgstr "Leerungsintervall für Zwischenspeicher"
msgid "Forwarding between listen and server addresses"
msgstr "Weiterleitung zwischen Listen- und Server-Adressen"
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Diagramme"
@@ -179,6 +194,9 @@ msgstr ""
"Hier werden die Kriterien festgelegt nach welchen die zu überwachenden "
"Firewall-Regeln ausgewählt werden."
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr "Host"
@@ -244,6 +262,9 @@ msgstr "Alle bis auf Angegebene überwachen"
msgid "Monitor all local listen ports"
msgstr "Alle durch lokale Dienste genutzten Ports überwachen"
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Geräte überwachen"
@@ -307,6 +328,15 @@ msgstr "OLSRd-Plugin-Konfiguration"
msgid "Only create average RRAs"
msgstr "Nur &#39;average&#39; RRAs erzeugen"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "Optionen"
@@ -364,12 +394,24 @@ msgstr "Skript"
msgid "Seconds"
msgstr "Sekunden"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "Server-Host"
msgid "Server port"
msgstr "Server-Port"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr "Shapingklassen überwachen"
@@ -418,9 +460,6 @@ msgstr "gespeicherte Zeitspannen"
msgid "System Load"
msgstr "Systemlast"
-msgid "System plugins"
-msgstr "Systemplugins"
-
msgid "TCP Connections"
msgstr "TCP-Verbindungen"
@@ -448,6 +487,11 @@ msgstr ""
"Erweiterung."
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -497,6 +541,9 @@ msgstr ""
"Plugin ist primär für die Verwendung zusammen mit Mail::SpamAssasin::Plugin::"
"Collectd gedacht, kann aber auch anderweitig verwendet werden."
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -549,7 +596,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
"Das Network-Plugin ermöglicht die netzwerkgestützte Kommunikation zwischen "
@@ -585,18 +632,20 @@ msgstr ""
"machen, da Systemspeicher für den regulären Betrieb fehlt!</strong>"
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"Das Statistik-Paket basiert auf <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> und nutzt <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> um die gesammelten Daten in Diagramme zu rendern."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -652,6 +701,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Pfad zu PID-Datei"
@@ -667,6 +719,10 @@ msgstr "Drahtlos"
msgid "Wireless iwinfo Plugin Configuration"
msgstr "Wireless-iwinfo Plugin Konfiguration"
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "z.B. br-ff"
@@ -688,6 +744,21 @@ msgstr "mehrere mit Leerzeichen trennen"
msgid "server interfaces"
msgstr "Server-Schnittstellen"
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "Systemplugins"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "Das Statistik-Paket basiert auf <a href=\"http://collectd.org/index.shtml"
+#~ "\">Collectd</a> und nutzt <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
+#~ "Tool</a> um die gesammelten Daten in Diagramme zu rendern."
+
#~ msgid "Installed network plugins:"
#~ msgstr "Installierte Netzwerk-Plugins:"
diff --git a/applications/luci-app-statistics/po/el/statistics.po b/applications/luci-app-statistics/po/el/statistics.po
index a7545feee1..746284f8d8 100644
--- a/applications/luci-app-statistics/po/el/statistics.po
+++ b/applications/luci-app-statistics/po/el/statistics.po
@@ -28,6 +28,9 @@ msgstr ""
msgid "Add notification command"
msgstr ""
+msgid "Aggregate number of connected users"
+msgstr ""
+
#, fuzzy
msgid "Base Directory"
msgstr "Κατάλογος βάσης"
@@ -62,9 +65,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Ρυθμίσεις Collectd"
@@ -132,6 +132,12 @@ msgstr "Ηλ. Ταχυδρομείο"
msgid "Enable this plugin"
msgstr ""
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -150,6 +156,15 @@ msgstr ""
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Γραφήματα"
@@ -172,6 +187,9 @@ msgid ""
"are selected."
msgstr ""
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -235,6 +253,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr ""
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -298,6 +319,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr ""
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -355,12 +385,24 @@ msgstr ""
msgid "Seconds"
msgstr "Δευτερόλεπτα"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr ""
msgid "Server port"
msgstr ""
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -409,9 +451,6 @@ msgstr ""
msgid "System Load"
msgstr "Φόρτος Συστήματος"
-msgid "System plugins"
-msgstr "Πρόσθετα συστήματος"
-
msgid "TCP Connections"
msgstr "Συνδέσεις TCP"
@@ -436,6 +475,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -470,6 +514,9 @@ msgid ""
"be used in other ways as well."
msgstr ""
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -508,7 +555,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
@@ -530,18 +577,20 @@ msgid ""
msgstr ""
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"Το πακέτο στατιστικών βασίζεται στο <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> και χρησιμοποιεί το <a href=\"http://oss.oetiker.ch/rrdtool/"
-"\">RRD Tool</a> για να σχεδιάσει διαγράμματα από τα συλλεγόμενα δεδομένα."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -589,6 +638,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Αρχείο PID σε χρήση"
@@ -604,6 +656,10 @@ msgstr "Ασύρματο"
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "π.χ. br-ff"
@@ -624,3 +680,19 @@ msgstr ""
msgid "server interfaces"
msgstr ""
+
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "Πρόσθετα συστήματος"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "Το πακέτο στατιστικών βασίζεται στο <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> και χρησιμοποιεί το <a href=\"http://oss.oetiker.ch/"
+#~ "rrdtool/\">RRD Tool</a> για να σχεδιάσει διαγράμματα από τα συλλεγόμενα "
+#~ "δεδομένα."
diff --git a/applications/luci-app-statistics/po/en/statistics.po b/applications/luci-app-statistics/po/en/statistics.po
index 5a29927a2f..79f710c97a 100644
--- a/applications/luci-app-statistics/po/en/statistics.po
+++ b/applications/luci-app-statistics/po/en/statistics.po
@@ -28,6 +28,9 @@ msgstr ""
msgid "Add notification command"
msgstr "Add notification command"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Base Directory"
@@ -61,9 +64,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Collectd Settings"
@@ -130,6 +130,12 @@ msgstr "Email"
msgid "Enable this plugin"
msgstr "Enable this plugin"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -148,6 +154,15 @@ msgstr "Flush cache after"
msgid "Forwarding between listen and server addresses"
msgstr "Forwarding between listen and server addresses"
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Graphs"
@@ -177,6 +192,9 @@ msgstr ""
"Here you can define various criteria by which the monitored iptables rules "
"are selected."
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -240,6 +258,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr "Monitor all local listen ports"
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Monitor devices"
@@ -303,6 +324,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr "Only create average RRAs"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "Options"
@@ -360,12 +390,24 @@ msgstr ""
msgid "Seconds"
msgstr "Seconds"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "Server host"
msgid "Server port"
msgstr "Server port"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr "Shaping class monitoring"
@@ -414,9 +456,6 @@ msgstr "Stored timespans"
msgid "System Load"
msgstr "System Load"
-msgid "System plugins"
-msgstr "System plugins"
-
msgid "TCP Connections"
msgstr "TCP Connections"
@@ -441,6 +480,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -487,6 +531,9 @@ msgstr ""
"to be used in conjunction with Mail::SpamAssasin::Plugin::Collectd but can "
"be used in other ways as well."
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -534,12 +581,12 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgid ""
@@ -568,18 +615,20 @@ msgstr ""
"directory. This can render the device unusable!</strong>"
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -634,6 +683,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Used PID file"
@@ -649,6 +701,10 @@ msgstr "Wireless"
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "e.g. br-ff"
@@ -670,6 +726,21 @@ msgstr "seconds; multiple separated by space"
msgid "server interfaces"
msgstr "server interfaces"
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "System plugins"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+
#~ msgid ""
#~ "The wireless plugin collects statistics about wireless signal strength, "
#~ "noise and quality."
diff --git a/applications/luci-app-statistics/po/es/statistics.po b/applications/luci-app-statistics/po/es/statistics.po
index 93a6d539e6..7067710f13 100644
--- a/applications/luci-app-statistics/po/es/statistics.po
+++ b/applications/luci-app-statistics/po/es/statistics.po
@@ -28,6 +28,9 @@ msgstr "Añadir múltiples máquinas separadas por espacio."
msgid "Add notification command"
msgstr "Añadir comando de notificación"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Directorio Base"
@@ -61,9 +64,6 @@ msgstr "Rutas"
msgid "CollectTopology"
msgstr "Topología"
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Configuración de Collectd"
@@ -130,6 +130,12 @@ msgstr "Correo electrónico"
msgid "Enable this plugin"
msgstr "Activar este plugin"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -148,6 +154,15 @@ msgstr "Vaciar caché tras"
msgid "Forwarding between listen and server addresses"
msgstr "Retransmitir entre las direcciones de escucha y servidor"
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Gráficas"
@@ -176,6 +191,9 @@ msgstr ""
"Aquí puede definir varios criterios de selección de reglas de iptables "
"monitorizadas."
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr "Máquina"
@@ -239,6 +257,9 @@ msgstr "Monitorizar todos menos los especificados"
msgid "Monitor all local listen ports"
msgstr "Monitorizar todos los puertos de escucha locales"
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Dispositivos a monitonizar"
@@ -302,6 +323,15 @@ msgstr "Configuración del plugin \"OLSRd\""
msgid "Only create average RRAs"
msgstr "Crear sólo RRAs medias"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "Opciones"
@@ -359,12 +389,24 @@ msgstr "Guión"
msgid "Seconds"
msgstr "Segundos"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "Máquina servidor"
msgid "Server port"
msgstr "Puerto servidor"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr "Monitorización de la clase shaping"
@@ -413,9 +455,6 @@ msgstr "Intervalos almacenados"
msgid "System Load"
msgstr "Carga del sistema"
-msgid "System plugins"
-msgstr "Plugins del sistema"
-
msgid "TCP Connections"
msgstr "Conexiones TCP"
@@ -444,6 +483,11 @@ msgstr ""
"txtinfo de OLSRd."
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -495,6 +539,9 @@ msgstr ""
"utilizado en conjunto con Mail::SpamAssasin::Plugin::Collectd pero puede "
"utilizarse de diferentes formas."
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -546,7 +593,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
"El plugin \"red\" proporciona comunicación entre diferentes instancias de "
@@ -581,18 +628,20 @@ msgstr ""
"puede hacer que el dispositivo funcione mal!</strong>"
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"El paquete \"estadísticas\" está basado en <a href=\"http://collectd.org/"
-"index.shtml\">Collectd</a> y utiliza <a href=\"http://oss.oetiker.ch/rrdtool/"
-"\">RRD Tool</a> para dibujar gráficos con los datos recogidos."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -648,6 +697,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Archivo PID utilizado"
@@ -663,6 +715,10 @@ msgstr "Red inalámbrica"
msgid "Wireless iwinfo Plugin Configuration"
msgstr "Configuración plugin \"Wireless iwinfo\""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "p.e. br-ff"
@@ -684,6 +740,21 @@ msgstr "segundos (varios separados por espacio)"
msgid "server interfaces"
msgstr "interfaces servidores"
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "Plugins del sistema"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "El paquete \"estadísticas\" está basado en <a href=\"http://collectd.org/"
+#~ "index.shtml\">Collectd</a> y utiliza <a href=\"http://oss.oetiker.ch/"
+#~ "rrdtool/\">RRD Tool</a> para dibujar gráficos con los datos recogidos."
+
#~ msgid "Installed network plugins:"
#~ msgstr "Plugins de red instalados:"
diff --git a/applications/luci-app-statistics/po/fr/statistics.po b/applications/luci-app-statistics/po/fr/statistics.po
index badaccd207..194a220480 100644
--- a/applications/luci-app-statistics/po/fr/statistics.po
+++ b/applications/luci-app-statistics/po/fr/statistics.po
@@ -28,6 +28,9 @@ msgstr ""
msgid "Add notification command"
msgstr "Ajoute une commande de notification"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Répertoire de base"
@@ -61,9 +64,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Paramètres Collectd"
@@ -130,6 +130,12 @@ msgstr "Courriel"
msgid "Enable this plugin"
msgstr "Activer ce greffon"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -148,6 +154,15 @@ msgstr "Vidanger le cache après"
msgid "Forwarding between listen and server addresses"
msgstr "Transfert entre les adresses en écoute et du serveur"
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Graphiques"
@@ -178,6 +193,9 @@ msgstr ""
"Vous pouvez définir ici les critères variés pour sélectionner les règles "
"iptables à surveiller."
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -241,6 +259,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr "Surveiller tous les ports en écoute locaux"
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Périphériques à surveiller"
@@ -304,6 +325,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr "Créer seulement des RRAs moyens"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "Options"
@@ -361,12 +391,24 @@ msgstr ""
msgid "Seconds"
msgstr "Secondes"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "Hôte du serveur"
msgid "Server port"
msgstr "Port du serveur"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr "Surveillance liées à la priorité"
@@ -415,9 +457,6 @@ msgstr "Durée de la période enregistrée"
msgid "System Load"
msgstr "Charge-système"
-msgid "System plugins"
-msgstr "Greffons liés au système"
-
msgid "TCP Connections"
msgstr "Connexions TCP"
@@ -442,6 +481,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -488,6 +532,9 @@ msgstr ""
"Ce greffon est d'abord destiné à être utilisé avec Mail::SpamAssasin::"
"Plugin::Collectd mais peut être utilisé d'autres manières également."
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -540,7 +587,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
"Le greffon réseau fournit des communications-réseau entre différentes "
@@ -576,19 +623,20 @@ msgstr ""
"le matériel inutilisable !</strong>"
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"Ce paquet d'outils statistiques s'appuie sur le logiciel <a href=\"http://"
-"collectd.org/index.shtml\">Collectd</a> et utilise <a href=\"http://oss."
-"oetiker.ch/rrdtool/\">RRD Tool</a> pour calculer les graphes issus des "
-"données collectées."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -642,6 +690,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Fichier PID utilisé"
@@ -657,6 +708,10 @@ msgstr "Sans-fil"
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "p.ex. br-ff"
@@ -678,6 +733,22 @@ msgstr "En secondes ; séparer différentes valeurs par des espaces"
msgid "server interfaces"
msgstr "Interfaces du serveur"
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "Greffons liés au système"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "Ce paquet d'outils statistiques s'appuie sur le logiciel <a href=\"http://"
+#~ "collectd.org/index.shtml\">Collectd</a> et utilise <a href=\"http://oss."
+#~ "oetiker.ch/rrdtool/\">RRD Tool</a> pour calculer les graphes issus des "
+#~ "données collectées."
+
#~ msgid ""
#~ "The wireless plugin collects statistics about wireless signal strength, "
#~ "noise and quality."
diff --git a/applications/luci-app-statistics/po/he/statistics.po b/applications/luci-app-statistics/po/he/statistics.po
index 85fed30f49..10e8a12688 100644
--- a/applications/luci-app-statistics/po/he/statistics.po
+++ b/applications/luci-app-statistics/po/he/statistics.po
@@ -28,6 +28,9 @@ msgstr ""
msgid "Add notification command"
msgstr ""
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr ""
@@ -61,9 +64,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr ""
-
msgid "Collectd Settings"
msgstr ""
@@ -127,6 +127,12 @@ msgstr ""
msgid "Enable this plugin"
msgstr ""
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr ""
@@ -145,6 +151,15 @@ msgstr ""
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr ""
@@ -167,6 +182,9 @@ msgid ""
"are selected."
msgstr ""
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -230,6 +248,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr ""
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -293,6 +314,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr ""
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -350,12 +380,24 @@ msgstr ""
msgid "Seconds"
msgstr ""
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr ""
msgid "Server port"
msgstr ""
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -404,9 +446,6 @@ msgstr ""
msgid "System Load"
msgstr ""
-msgid "System plugins"
-msgstr ""
-
msgid "TCP Connections"
msgstr ""
@@ -431,6 +470,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -465,6 +509,9 @@ msgid ""
"be used in other ways as well."
msgstr ""
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -503,7 +550,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
@@ -525,14 +572,19 @@ msgid ""
msgstr ""
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
msgid ""
@@ -581,6 +633,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr ""
@@ -596,6 +651,10 @@ msgstr ""
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr ""
diff --git a/applications/luci-app-statistics/po/hu/statistics.po b/applications/luci-app-statistics/po/hu/statistics.po
index f1a57d6d2c..5d384144bd 100644
--- a/applications/luci-app-statistics/po/hu/statistics.po
+++ b/applications/luci-app-statistics/po/hu/statistics.po
@@ -26,6 +26,9 @@ msgstr ""
msgid "Add notification command"
msgstr "Értesítési parancs hozzáadása"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Alapkönyvtár"
@@ -59,9 +62,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Collectd beállítások"
@@ -128,6 +128,12 @@ msgstr "E-mail"
msgid "Enable this plugin"
msgstr "Bővítmény engedélyezése"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -146,6 +152,15 @@ msgstr "Gyorsítótár ürítése ezután:"
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Grafikonok"
@@ -176,6 +191,9 @@ msgstr ""
"Itt addhatók meg különböző feltételek, amelyek alapján a megfigyelt iptables "
"szabályok kiválasztásra kerülnek."
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr "Gép"
@@ -242,6 +260,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr ""
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Eszközök figyelése"
@@ -305,6 +326,15 @@ msgstr "OLSRd bővítmény beállítása"
msgid "Only create average RRAs"
msgstr "Csak átlag RRA-k létrehozása"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "Lehetőségek"
@@ -362,12 +392,24 @@ msgstr "Parancsfájl"
msgid "Seconds"
msgstr "másodperc"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "Kiszolgáló gép"
msgid "Server port"
msgstr "Kiszolgáló port"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -420,9 +462,6 @@ msgstr "Tárolt időszakok"
msgid "System Load"
msgstr "Rendszerterhelés"
-msgid "System plugins"
-msgstr "Rendszer bővítmények"
-
msgid "TCP Connections"
msgstr "TCP kapcsolatok"
@@ -449,6 +488,11 @@ msgstr ""
"txttinfo bővítményén keresztül."
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -499,6 +543,9 @@ msgstr ""
"elsősorban a Mail::SpamAssasin::Plugin::Collectd bővítménnyel együtt történő "
"használatra szolgál, de egyéb módokon is használható."
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -544,7 +591,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
@@ -568,19 +615,20 @@ msgid ""
msgstr ""
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"A statisztikai csomag a <a href=\"http://collectd.org/index.shtml"
-"\">collectd</a> segédprogramon alapul és az <a href=\"http://oss.oetiker.ch/"
-"rrdtool/\">RRD Tool</a> segédprogramot használja a grafikonok elkészítésére "
-"az összegyűjtött adatokból."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -634,6 +682,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Használt PID fájl"
@@ -649,6 +700,10 @@ msgstr "Vezeték nélküli"
msgid "Wireless iwinfo Plugin Configuration"
msgstr "iwinfo vezeték nélküli bővítmény beállítása"
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "pl. br-ff"
@@ -670,6 +725,22 @@ msgstr "másodpercek; több szóközzel elválasztott érték is megadható"
msgid "server interfaces"
msgstr "kiszolgáló interfész"
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "Rendszer bővítmények"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "A statisztikai csomag a <a href=\"http://collectd.org/index.shtml"
+#~ "\">collectd</a> segédprogramon alapul és az <a href=\"http://oss.oetiker."
+#~ "ch/rrdtool/\">RRD Tool</a> segédprogramot használja a grafikonok "
+#~ "elkészítésére az összegyűjtött adatokból."
+
#~ msgid "Installed network plugins:"
#~ msgstr "Telepített hálózati bővítmények:"
diff --git a/applications/luci-app-statistics/po/it/statistics.po b/applications/luci-app-statistics/po/it/statistics.po
index fbf8e9ef3b..ab5a783b37 100644
--- a/applications/luci-app-statistics/po/it/statistics.po
+++ b/applications/luci-app-statistics/po/it/statistics.po
@@ -28,6 +28,9 @@ msgstr ""
msgid "Add notification command"
msgstr ""
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr ""
@@ -61,9 +64,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr ""
-
msgid "Collectd Settings"
msgstr ""
@@ -130,6 +130,12 @@ msgstr ""
msgid "Enable this plugin"
msgstr "Abilita questo plugin"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr ""
@@ -148,6 +154,15 @@ msgstr ""
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr ""
@@ -175,6 +190,9 @@ msgid ""
"are selected."
msgstr ""
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -240,6 +258,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr ""
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -303,6 +324,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr ""
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -360,12 +390,24 @@ msgstr ""
msgid "Seconds"
msgstr ""
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr ""
msgid "Server port"
msgstr ""
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -414,9 +456,6 @@ msgstr ""
msgid "System Load"
msgstr ""
-msgid "System plugins"
-msgstr ""
-
msgid "TCP Connections"
msgstr ""
@@ -441,6 +480,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -475,6 +519,9 @@ msgid ""
"be used in other ways as well."
msgstr ""
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -513,7 +560,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
@@ -535,14 +582,19 @@ msgid ""
msgstr ""
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
msgid ""
@@ -591,6 +643,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr ""
@@ -606,6 +661,10 @@ msgstr ""
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr ""
diff --git a/applications/luci-app-statistics/po/ja/statistics.po b/applications/luci-app-statistics/po/ja/statistics.po
index 08853da3da..7ee9ae0846 100644
--- a/applications/luci-app-statistics/po/ja/statistics.po
+++ b/applications/luci-app-statistics/po/ja/statistics.po
@@ -28,6 +28,9 @@ msgstr ""
msgid "Add notification command"
msgstr ""
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "ベース・ディレクトリ"
@@ -61,9 +64,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Collectd 設定"
@@ -127,6 +127,12 @@ msgstr "Eメール"
msgid "Enable this plugin"
msgstr "プラグイン設定を有効にする"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr ""
@@ -145,6 +151,15 @@ msgstr ""
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "グラフ"
@@ -167,6 +182,9 @@ msgid ""
"are selected."
msgstr ""
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -230,6 +248,9 @@ msgstr "設定値以外の全てのインターフェースをモニターする
msgid "Monitor all local listen ports"
msgstr ""
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -293,6 +314,15 @@ msgstr "OLSRd プラグイン設定"
msgid "Only create average RRAs"
msgstr "平均値のRRAsのみ作成する"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "オプション"
@@ -350,12 +380,24 @@ msgstr "スクリプト"
msgid "Seconds"
msgstr "秒"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr ""
msgid "Server port"
msgstr ""
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -404,9 +446,6 @@ msgstr ""
msgid "System Load"
msgstr ""
-msgid "System plugins"
-msgstr "システムプラグイン"
-
msgid "TCP Connections"
msgstr ""
@@ -431,6 +470,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -465,6 +509,9 @@ msgid ""
"be used in other ways as well."
msgstr ""
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -506,7 +553,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
@@ -528,14 +575,19 @@ msgid ""
msgstr ""
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
msgid ""
@@ -584,6 +636,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "使用するPIDファイルの保存場所"
@@ -599,6 +654,10 @@ msgstr ""
msgid "Wireless iwinfo Plugin Configuration"
msgstr "無線LAN iwinfo プラグイン設定"
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr ""
@@ -619,3 +678,9 @@ msgstr ""
msgid "server interfaces"
msgstr ""
+
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "システムプラグイン"
diff --git a/applications/luci-app-statistics/po/ms/statistics.po b/applications/luci-app-statistics/po/ms/statistics.po
index 2b2d09259e..02dfae9eef 100644
--- a/applications/luci-app-statistics/po/ms/statistics.po
+++ b/applications/luci-app-statistics/po/ms/statistics.po
@@ -25,6 +25,9 @@ msgstr ""
msgid "Add notification command"
msgstr ""
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr ""
@@ -58,9 +61,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr ""
-
msgid "Collectd Settings"
msgstr ""
@@ -124,6 +124,12 @@ msgstr ""
msgid "Enable this plugin"
msgstr ""
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr ""
@@ -142,6 +148,15 @@ msgstr ""
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr ""
@@ -164,6 +179,9 @@ msgid ""
"are selected."
msgstr ""
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -227,6 +245,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr ""
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -290,6 +311,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr ""
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -347,12 +377,24 @@ msgstr ""
msgid "Seconds"
msgstr ""
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr ""
msgid "Server port"
msgstr ""
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -401,9 +443,6 @@ msgstr ""
msgid "System Load"
msgstr ""
-msgid "System plugins"
-msgstr ""
-
msgid "TCP Connections"
msgstr ""
@@ -428,6 +467,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -462,6 +506,9 @@ msgid ""
"be used in other ways as well."
msgstr ""
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -500,7 +547,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
@@ -522,14 +569,19 @@ msgid ""
msgstr ""
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
msgid ""
@@ -578,6 +630,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr ""
@@ -593,6 +648,10 @@ msgstr ""
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr ""
diff --git a/applications/luci-app-statistics/po/no/statistics.po b/applications/luci-app-statistics/po/no/statistics.po
index 4747d0dd24..c4300bc445 100644
--- a/applications/luci-app-statistics/po/no/statistics.po
+++ b/applications/luci-app-statistics/po/no/statistics.po
@@ -19,6 +19,9 @@ msgstr "Legg til flere verter adskilt med mellomrom."
msgid "Add notification command"
msgstr "Legg til varsling kommando"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Hoved Katalog"
@@ -52,9 +55,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Collectd Innstillinger"
@@ -121,6 +121,12 @@ msgstr "Epost"
msgid "Enable this plugin"
msgstr "Aktiver denne plugin"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Program"
@@ -139,6 +145,15 @@ msgstr "Tømme hurtigbufferen etter"
msgid "Forwarding between listen and server addresses"
msgstr "Videresending mellom lyttende og server adresser"
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Grafer"
@@ -166,6 +181,9 @@ msgid ""
"are selected."
msgstr "Her kan du definere kriterier for reglene som overvåker iptables."
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -229,6 +247,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr "Overvåk alle lokale lyttende porter"
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Overvåk enheter"
@@ -292,6 +313,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr "Lag kun gjennomsnittlige RRAs"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "Alternativer"
@@ -349,12 +379,24 @@ msgstr ""
msgid "Seconds"
msgstr "Sekunder"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "Server vert"
msgid "Server port"
msgstr "Server port"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr "Shaping class overvåking"
@@ -403,9 +445,6 @@ msgstr "Lagrede tidsperioder"
msgid "System Load"
msgstr "System Belastning"
-msgid "System plugins"
-msgstr "System plugins"
-
msgid "TCP Connections"
msgstr "TCP Forbindelser"
@@ -430,6 +469,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -476,6 +520,9 @@ msgstr ""
"bli brukt i forbindelse med Mail::SpamAssasin::Plugin::Collectd men kan også "
"brukes på andre måter."
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -522,7 +569,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
"Nettverk plugin gir nettverk basert kommunikasjon mellom ulike collectd "
@@ -556,18 +603,20 @@ msgstr ""
"katalogen (temp). Dette kan gjøre enheten ubrukelig!</strong>"
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"Statistikk pakken er basert på <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> og bruker <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> for å tegne diagram bilder fra innsamlede data."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -623,6 +672,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Brukt PID fil"
@@ -638,6 +690,10 @@ msgstr "Trådløs"
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "f.eks. br-ff"
@@ -659,6 +715,21 @@ msgstr "sekunder; flere adskilt med mellomrom"
msgid "server interfaces"
msgstr "Server grensesnitt"
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "System plugins"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "Statistikk pakken er basert på <a href=\"http://collectd.org/index.shtml"
+#~ "\">Collectd</a> og bruker <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
+#~ "Tool</a> for å tegne diagram bilder fra innsamlede data."
+
#~ msgid "Installed network plugins:"
#~ msgstr "Installerte nettverks plugin:"
diff --git a/applications/luci-app-statistics/po/pl/statistics.po b/applications/luci-app-statistics/po/pl/statistics.po
index c7af6380f3..d352bedb26 100644
--- a/applications/luci-app-statistics/po/pl/statistics.po
+++ b/applications/luci-app-statistics/po/pl/statistics.po
@@ -29,6 +29,9 @@ msgstr "Dodaj wiele hostów rozdzielonych spacjami."
msgid "Add notification command"
msgstr "Dodaj komendę powiadamiającą"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Główny katalog"
@@ -62,9 +65,6 @@ msgstr "CollectRoutes"
msgid "CollectTopology"
msgstr "CollectTopology"
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Ustawienia Collectd"
@@ -131,6 +131,12 @@ msgstr "E-mail"
msgid "Enable this plugin"
msgstr "Włącz tę wtyczkę"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -149,6 +155,15 @@ msgstr "Opróżnić cache po"
msgid "Forwarding between listen and server addresses"
msgstr "Przekazać przez słuchacza na adres serwera"
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Wykresy"
@@ -178,6 +193,9 @@ msgstr ""
"Tutaj można zdefiniować różne kryteria według których wybierane są "
"monitorowane reguły iptables."
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr "Host"
@@ -243,6 +261,9 @@ msgstr "Monitoruj wszystko oprócz podanych"
msgid "Monitor all local listen ports"
msgstr "Monitoruj wszystkie lokalne otwarte porty"
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Monitoruj urządzenia"
@@ -306,6 +327,15 @@ msgstr "Konfiguracja wtyczki OLSRd"
msgid "Only create average RRAs"
msgstr "Twórz tylko średnie archiwa RRA"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "Opcje"
@@ -363,12 +393,24 @@ msgstr "Skrypt"
msgid "Seconds"
msgstr "Sekundy"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "Host serwer"
msgid "Server port"
msgstr "Port serwera"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr "Shaping Klasa Monitoring"
@@ -418,9 +460,6 @@ msgstr "Przechowywane okresy czasu"
msgid "System Load"
msgstr "Obciążenie systemu"
-msgid "System plugins"
-msgstr "Wtyczki systemowe"
-
msgid "TCP Connections"
msgstr "Połączenia TCP"
@@ -447,6 +486,11 @@ msgstr ""
"OLSRd."
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr "Wtyczka Conntrack zbiera statystyki o liczbie śledzonych połączeń."
@@ -493,6 +537,9 @@ msgstr ""
"with Mail::SpamAssasin::Plugin::Collectd but can be used in other ways as "
"well."
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -541,7 +588,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
"Wtyczka zapewnia podstawową komunikacje między różnymi instancjami collectd. "
@@ -576,18 +623,20 @@ msgstr ""
"do użytku! </strong>"
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"Statystyki bazuja na <a href=\"http://collectd.org/index.shtml\">Collectd</"
-"a> oraz wykorzystują <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD Tool</a> "
-"do generowania diagramów i wykresów z zebranych danych."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -641,6 +690,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Używany plik PID"
@@ -656,6 +708,10 @@ msgstr "WiFi"
msgid "Wireless iwinfo Plugin Configuration"
msgstr "Konfiguracja bezprzewodowego pluginu iwinfo"
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "np. br-ff"
@@ -677,6 +733,21 @@ msgstr "sekundy; wielokrotnie oddzielone spacją"
msgid "server interfaces"
msgstr "interfejsy serwera"
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "Wtyczki systemowe"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "Statystyki bazuja na <a href=\"http://collectd.org/index.shtml"
+#~ "\">Collectd</a> oraz wykorzystują <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> do generowania diagramów i wykresów z zebranych danych."
+
#~ msgid "Installed network plugins:"
#~ msgstr "Zainstalowane wtyczki sieciowe:"
diff --git a/applications/luci-app-statistics/po/pt-br/statistics.po b/applications/luci-app-statistics/po/pt-br/statistics.po
index 91d681b2d0..9abba4975b 100644
--- a/applications/luci-app-statistics/po/pt-br/statistics.po
+++ b/applications/luci-app-statistics/po/pt-br/statistics.po
@@ -28,6 +28,9 @@ msgstr "Adicione múltiplos equipamentos separados por espaço."
msgid "Add notification command"
msgstr "Adicionar o comando de notificação"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Diretório Base"
@@ -61,9 +64,6 @@ msgstr "Coleção de Rotas"
msgid "CollectTopology"
msgstr "Coleção de Topologias"
-msgid "Collectd"
-msgstr "Coletar"
-
msgid "Collectd Settings"
msgstr "Configurações do Coletadas"
@@ -130,6 +130,12 @@ msgstr "Email"
msgid "Enable this plugin"
msgstr "Habilitar este plugin"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -149,6 +155,15 @@ msgid "Forwarding between listen and server addresses"
msgstr ""
"Encaminhamento entre o endereço de escuta e os endereços dos servidores"
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Gráficos"
@@ -178,6 +193,9 @@ msgstr ""
"Aqui você pode definir diversos critérios para as regras iptables "
"selecionadas serem monitoradas."
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr "Equipamento"
@@ -243,6 +261,9 @@ msgstr "Monitore tudo exceto se especificado"
msgid "Monitor all local listen ports"
msgstr "Monitorar todas as portas locais"
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Monitorar dispositivos"
@@ -306,6 +327,15 @@ msgstr "Configuração do Plugin OLSRd"
msgid "Only create average RRAs"
msgstr "Somente criar RRAs de média"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "Opções"
@@ -363,12 +393,24 @@ msgstr "Script"
msgid "Seconds"
msgstr "Segundos"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "Endereço do servidor"
msgid "Server port"
msgstr "Porta do servidor"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr "Monitoramento das Classes de Shaping"
@@ -417,9 +459,6 @@ msgstr "Intervalos armazenados"
msgid "System Load"
msgstr "Carga do Sistema"
-msgid "System plugins"
-msgstr "Plugins de sistema"
-
msgid "TCP Connections"
msgstr "Conexões TCP"
@@ -446,6 +485,11 @@ msgstr ""
"txtinfo do OLSRd."
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -495,6 +539,9 @@ msgstr ""
"destinado a ser utilizado em conjunto com o plugin Mail::SpamAssasin::"
"Plugin::Collectd mas pode ser utilizado de outras maneiras também."
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -546,7 +593,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
"O plugin rede fornece informações de rede baseadas na comunicação entre as "
@@ -581,18 +628,20 @@ msgstr ""
"Isso pode tornar o equipamento inutilizável!</strong>"
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"As estatísticas são baseadas no <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> e é utilizado o <a href=\"http://oss.oetiker.ch/rrdtool/"
-"\">RRD Tool</a> para renderização das imagens a partir dos dados coletados."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -648,6 +697,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Arquivo PID usado"
@@ -663,6 +715,10 @@ msgstr "Rede Sem Fio (Wireless)"
msgid "Wireless iwinfo Plugin Configuration"
msgstr "Configuração do Plugin iwinfo da Rede Sem Fio (Wireless)"
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "ex: br-ff"
@@ -684,6 +740,22 @@ msgstr "segundos; vários valores, separar com espaço"
msgid "server interfaces"
msgstr "interfaces do servidor"
+#~ msgid "Collectd"
+#~ msgstr "Coletar"
+
+#~ msgid "System plugins"
+#~ msgstr "Plugins de sistema"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "As estatísticas são baseadas no <a href=\"http://collectd.org/index.shtml"
+#~ "\">Collectd</a> e é utilizado o <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> para renderização das imagens a partir dos dados "
+#~ "coletados."
+
#~ msgid "Installed network plugins:"
#~ msgstr "Plugins de rede instalados:"
diff --git a/applications/luci-app-statistics/po/pt/statistics.po b/applications/luci-app-statistics/po/pt/statistics.po
index 5e41c32568..34b435c5d1 100644
--- a/applications/luci-app-statistics/po/pt/statistics.po
+++ b/applications/luci-app-statistics/po/pt/statistics.po
@@ -28,6 +28,9 @@ msgstr "Adicionar hosts múltiplos separados por espaço."
msgid "Add notification command"
msgstr "Adicionar o comando de notificação"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Diretório Base"
@@ -61,9 +64,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Configurações do Collectd"
@@ -130,6 +130,12 @@ msgstr "Email"
msgid "Enable this plugin"
msgstr "Habilitar este plugin"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -148,6 +154,15 @@ msgstr "Limpar cache após"
msgid "Forwarding between listen and server addresses"
msgstr "Transmissão entre o endereço de escuta e dos servidores"
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Gráficos"
@@ -177,6 +192,9 @@ msgstr ""
"Aqui você pode definir diversos critérios para as regras iptables "
"selecionadas serem monitoradas."
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -242,6 +260,9 @@ msgstr "Monitorizar tudo excepto os especificados"
msgid "Monitor all local listen ports"
msgstr "Monitorar todas as portas locais"
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Monitorar dispositivos"
@@ -305,6 +326,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr "Somente criar RRAs de média"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "Opções"
@@ -362,12 +392,24 @@ msgstr ""
msgid "Seconds"
msgstr "Segundos"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "IP/Hostname do servidor"
msgid "Server port"
msgstr "Porta do servidor"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr "Monitoramento das Classes de Shaping"
@@ -416,9 +458,6 @@ msgstr "Intervalos armazenados"
msgid "System Load"
msgstr "Carga do Sistema"
-msgid "System plugins"
-msgstr "Plugis de Sistema"
-
msgid "TCP Connections"
msgstr "Conexões TCP"
@@ -443,6 +482,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -490,6 +534,9 @@ msgstr ""
"destinado a ser utilizado em conjunto com o plugin Mail::SpamAssasin::"
"Plugin::Collectd mas pode ser utilizado de outras maneiras também."
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -539,7 +586,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
"O plugin rede fornece informações de rede baseadas na comunicação entre as "
@@ -574,18 +621,20 @@ msgstr ""
"Isso pode tornar o equipamento inutilizável!</strong>"
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"As estatísticas são baseadas no <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> e é utilizado o <a href=\"http://oss.oetiker.ch/rrdtool/"
-"\">RRD Tool</a> para renderização das imagens à partir dos dados coletados."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -641,6 +690,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Arquivo PID usado"
@@ -656,6 +708,10 @@ msgstr "Wireless"
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "ex. br-ff"
@@ -677,6 +733,22 @@ msgstr "segundos; vários valores, separar com espaço"
msgid "server interfaces"
msgstr "Interfaces do servidor"
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "Plugis de Sistema"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "As estatísticas são baseadas no <a href=\"http://collectd.org/index.shtml"
+#~ "\">Collectd</a> e é utilizado o <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> para renderização das imagens à partir dos dados "
+#~ "coletados."
+
#~ msgid ""
#~ "The wireless plugin collects statistics about wireless signal strength, "
#~ "noise and quality."
diff --git a/applications/luci-app-statistics/po/ro/statistics.po b/applications/luci-app-statistics/po/ro/statistics.po
index 337ae3848e..7990970d20 100644
--- a/applications/luci-app-statistics/po/ro/statistics.po
+++ b/applications/luci-app-statistics/po/ro/statistics.po
@@ -29,6 +29,9 @@ msgstr ""
msgid "Add notification command"
msgstr ""
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Directorul de baza"
@@ -62,9 +65,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Setarile Collectd"
@@ -131,6 +131,12 @@ msgstr "Email"
msgid "Enable this plugin"
msgstr ""
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -149,6 +155,15 @@ msgstr ""
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Grafice"
@@ -171,6 +186,9 @@ msgid ""
"are selected."
msgstr ""
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -234,6 +252,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr ""
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -297,6 +318,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr ""
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -354,12 +384,24 @@ msgstr ""
msgid "Seconds"
msgstr "Secunde"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr ""
msgid "Server port"
msgstr ""
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -408,9 +450,6 @@ msgstr ""
msgid "System Load"
msgstr "Incarcarea de sistem"
-msgid "System plugins"
-msgstr "Pluginuri de sistem"
-
msgid "TCP Connections"
msgstr "Conexiuni TCP"
@@ -435,6 +474,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -471,6 +515,9 @@ msgid ""
"be used in other ways as well."
msgstr ""
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -509,7 +556,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
@@ -531,14 +578,19 @@ msgid ""
msgstr ""
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
msgid ""
@@ -587,6 +639,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Fisierul pentru PID folosit"
@@ -602,6 +657,10 @@ msgstr "Wireless"
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr ""
@@ -622,3 +681,9 @@ msgstr ""
msgid "server interfaces"
msgstr ""
+
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "Pluginuri de sistem"
diff --git a/applications/luci-app-statistics/po/ru/statistics.po b/applications/luci-app-statistics/po/ru/statistics.po
index 054fc381ce..d41248f8a5 100644
--- a/applications/luci-app-statistics/po/ru/statistics.po
+++ b/applications/luci-app-statistics/po/ru/statistics.po
@@ -30,6 +30,9 @@ msgstr "Добавить несколько хостов, разделённых
msgid "Add notification command"
msgstr "Добавить команду уведомления"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Базовая директория"
@@ -63,9 +66,6 @@ msgstr "Сбор информации о маршрутах (CollectRoutes)"
msgid "CollectTopology"
msgstr "Сбор информации о топологии (CollectTopology)"
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Настройки Collectd"
@@ -131,6 +131,12 @@ msgstr "E-mail"
msgid "Enable this plugin"
msgstr "Включить этот модуль"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -150,6 +156,15 @@ msgstr "Сбросить кэш после"
msgid "Forwarding between listen and server addresses"
msgstr "Перенаправление между локальным адресом и адресом сервера"
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Графики"
@@ -179,6 +194,9 @@ msgstr ""
"Здесь вы можете указать различные критерии, по которым будут выбраны правила "
"для сбора статистики."
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr "Хост"
@@ -244,6 +262,9 @@ msgstr "Собирать статистику со всех, кроме указ
msgid "Monitor all local listen ports"
msgstr "Собирать статистику со всех портов, ожидающих соединения"
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Собирать статистику с устройств"
@@ -307,6 +328,15 @@ msgstr "Настройка плагина OLSRd"
msgid "Only create average RRAs"
msgstr "Создавать только средние RRA"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "Опции"
@@ -366,12 +396,24 @@ msgstr "Скрипт"
msgid "Seconds"
msgstr "Секунды"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "Хост сервера"
msgid "Server port"
msgstr "Порт сервера"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr "Мониторинг классов шейпинга"
@@ -420,9 +462,6 @@ msgstr "Сохранённые промежутки времени"
msgid "System Load"
msgstr "Загрузка системы"
-msgid "System plugins"
-msgstr "Системные модули"
-
msgid "TCP Connections"
msgstr "TCPConns"
@@ -448,6 +487,11 @@ msgstr ""
"Модуль OLSRd считывает информацию о узловых сетях с модуля txtinfo OLSRd."
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -494,6 +538,9 @@ msgstr ""
"модуль предназначен для использования вместе с Mail::SpamAssasin::Plugin::"
"Collectd."
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -539,7 +586,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
"Модуль Network предоставляет возможность сетевого обмена данными между "
@@ -572,18 +619,20 @@ msgstr ""
"директории. Это, в свою очередь, может привести к отказу устройства!</strong>"
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"Данная статистика основана на программе <a href=\"http://collectd.org/index."
-"shtml\">Collectd</a> и использует <a href=\"http://oss.oetiker.ch/rrdtool/"
-"\">RRD Tool</a> для построения диаграмм."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -640,6 +689,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Используемый PID-файл"
@@ -655,6 +707,10 @@ msgstr "Wireless"
msgid "Wireless iwinfo Plugin Configuration"
msgstr "Конфигурация модуля Iwinfo"
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "напр. br-ff"
@@ -677,6 +733,21 @@ msgstr "секунды; разделяются пробелом"
msgid "server interfaces"
msgstr "интерфейсы сервера"
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "Системные модули"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "Данная статистика основана на программе <a href=\"http://collectd.org/"
+#~ "index.shtml\">Collectd</a> и использует <a href=\"http://oss.oetiker.ch/"
+#~ "rrdtool/\">RRD Tool</a> для построения диаграмм."
+
#~ msgid "Installed network plugins:"
#~ msgstr "Установленные сетевые модули:"
diff --git a/applications/luci-app-statistics/po/sk/statistics.po b/applications/luci-app-statistics/po/sk/statistics.po
index e233c86979..e0400c2fde 100644
--- a/applications/luci-app-statistics/po/sk/statistics.po
+++ b/applications/luci-app-statistics/po/sk/statistics.po
@@ -23,6 +23,9 @@ msgstr ""
msgid "Add notification command"
msgstr ""
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr ""
@@ -56,9 +59,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr ""
-
msgid "Collectd Settings"
msgstr ""
@@ -122,6 +122,12 @@ msgstr ""
msgid "Enable this plugin"
msgstr ""
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr ""
@@ -140,6 +146,15 @@ msgstr ""
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr ""
@@ -162,6 +177,9 @@ msgid ""
"are selected."
msgstr ""
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -225,6 +243,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr ""
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -288,6 +309,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr ""
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -345,12 +375,24 @@ msgstr ""
msgid "Seconds"
msgstr ""
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr ""
msgid "Server port"
msgstr ""
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -399,9 +441,6 @@ msgstr ""
msgid "System Load"
msgstr ""
-msgid "System plugins"
-msgstr ""
-
msgid "TCP Connections"
msgstr ""
@@ -426,6 +465,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -460,6 +504,9 @@ msgid ""
"be used in other ways as well."
msgstr ""
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -498,7 +545,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
@@ -520,14 +567,19 @@ msgid ""
msgstr ""
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
msgid ""
@@ -576,6 +628,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr ""
@@ -591,6 +646,10 @@ msgstr ""
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr ""
diff --git a/applications/luci-app-statistics/po/sv/statistics.po b/applications/luci-app-statistics/po/sv/statistics.po
index 8a1c05fd2d..9c7b2175a7 100644
--- a/applications/luci-app-statistics/po/sv/statistics.po
+++ b/applications/luci-app-statistics/po/sv/statistics.po
@@ -24,6 +24,9 @@ msgstr ""
msgid "Add notification command"
msgstr ""
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr ""
@@ -57,9 +60,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr ""
-
msgid "Collectd Settings"
msgstr ""
@@ -123,6 +123,12 @@ msgstr ""
msgid "Enable this plugin"
msgstr ""
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr ""
@@ -141,6 +147,15 @@ msgstr ""
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr ""
@@ -163,6 +178,9 @@ msgid ""
"are selected."
msgstr ""
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -226,6 +244,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr ""
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -289,6 +310,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr ""
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -346,12 +376,24 @@ msgstr ""
msgid "Seconds"
msgstr ""
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr ""
msgid "Server port"
msgstr ""
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -400,9 +442,6 @@ msgstr ""
msgid "System Load"
msgstr ""
-msgid "System plugins"
-msgstr ""
-
msgid "TCP Connections"
msgstr ""
@@ -427,6 +466,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -461,6 +505,9 @@ msgid ""
"be used in other ways as well."
msgstr ""
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -499,7 +546,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
@@ -521,14 +568,19 @@ msgid ""
msgstr ""
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
msgid ""
@@ -577,6 +629,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr ""
@@ -592,6 +647,10 @@ msgstr ""
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr ""
diff --git a/applications/luci-app-statistics/po/templates/statistics.pot b/applications/luci-app-statistics/po/templates/statistics.pot
index 8f61687323..2b4ba7fbc2 100644
--- a/applications/luci-app-statistics/po/templates/statistics.pot
+++ b/applications/luci-app-statistics/po/templates/statistics.pot
@@ -16,6 +16,9 @@ msgstr ""
msgid "Add notification command"
msgstr ""
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr ""
@@ -49,9 +52,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr ""
-
msgid "Collectd Settings"
msgstr ""
@@ -115,6 +115,12 @@ msgstr ""
msgid "Enable this plugin"
msgstr ""
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr ""
@@ -133,6 +139,15 @@ msgstr ""
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr ""
@@ -155,6 +170,9 @@ msgid ""
"are selected."
msgstr ""
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -218,6 +236,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr ""
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -281,6 +302,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr ""
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -338,12 +368,24 @@ msgstr ""
msgid "Seconds"
msgstr ""
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr ""
msgid "Server port"
msgstr ""
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -392,9 +434,6 @@ msgstr ""
msgid "System Load"
msgstr ""
-msgid "System plugins"
-msgstr ""
-
msgid "TCP Connections"
msgstr ""
@@ -419,6 +458,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -453,6 +497,9 @@ msgid ""
"be used in other ways as well."
msgstr ""
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -491,7 +538,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
@@ -513,14 +560,19 @@ msgid ""
msgstr ""
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
msgid ""
@@ -569,6 +621,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr ""
@@ -584,6 +639,10 @@ msgstr ""
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr ""
diff --git a/applications/luci-app-statistics/po/tr/statistics.po b/applications/luci-app-statistics/po/tr/statistics.po
index 0504d80062..505b5a16b9 100644
--- a/applications/luci-app-statistics/po/tr/statistics.po
+++ b/applications/luci-app-statistics/po/tr/statistics.po
@@ -24,6 +24,9 @@ msgstr ""
msgid "Add notification command"
msgstr ""
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr ""
@@ -57,9 +60,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr ""
-
msgid "Collectd Settings"
msgstr ""
@@ -123,6 +123,12 @@ msgstr ""
msgid "Enable this plugin"
msgstr ""
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr ""
@@ -141,6 +147,15 @@ msgstr ""
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr ""
@@ -163,6 +178,9 @@ msgid ""
"are selected."
msgstr ""
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -226,6 +244,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr ""
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -289,6 +310,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr ""
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -346,12 +376,24 @@ msgstr ""
msgid "Seconds"
msgstr ""
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr ""
msgid "Server port"
msgstr ""
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -400,9 +442,6 @@ msgstr ""
msgid "System Load"
msgstr ""
-msgid "System plugins"
-msgstr ""
-
msgid "TCP Connections"
msgstr ""
@@ -427,6 +466,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -461,6 +505,9 @@ msgid ""
"be used in other ways as well."
msgstr ""
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -499,7 +546,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
@@ -521,14 +568,19 @@ msgid ""
msgstr ""
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
msgid ""
@@ -577,6 +629,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr ""
@@ -592,6 +647,10 @@ msgstr ""
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr ""
diff --git a/applications/luci-app-statistics/po/uk/statistics.po b/applications/luci-app-statistics/po/uk/statistics.po
index d9d0619f59..ee5ea8f35f 100644
--- a/applications/luci-app-statistics/po/uk/statistics.po
+++ b/applications/luci-app-statistics/po/uk/statistics.po
@@ -29,6 +29,9 @@ msgstr ""
msgid "Add notification command"
msgstr ""
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr ""
@@ -62,9 +65,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr ""
-
msgid "Collectd Settings"
msgstr ""
@@ -128,6 +128,12 @@ msgstr ""
msgid "Enable this plugin"
msgstr ""
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr ""
@@ -146,6 +152,15 @@ msgstr ""
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr ""
@@ -168,6 +183,9 @@ msgid ""
"are selected."
msgstr ""
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -231,6 +249,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr ""
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -294,6 +315,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr ""
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -351,12 +381,24 @@ msgstr ""
msgid "Seconds"
msgstr ""
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr ""
msgid "Server port"
msgstr ""
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -405,9 +447,6 @@ msgstr ""
msgid "System Load"
msgstr ""
-msgid "System plugins"
-msgstr ""
-
msgid "TCP Connections"
msgstr ""
@@ -432,6 +471,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -466,6 +510,9 @@ msgid ""
"be used in other ways as well."
msgstr ""
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -504,7 +551,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
@@ -526,14 +573,19 @@ msgid ""
msgstr ""
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
msgid ""
@@ -582,6 +634,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr ""
@@ -597,6 +652,10 @@ msgstr ""
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr ""
diff --git a/applications/luci-app-statistics/po/vi/statistics.po b/applications/luci-app-statistics/po/vi/statistics.po
index 3aeb7c995e..28bc8b4bc6 100644
--- a/applications/luci-app-statistics/po/vi/statistics.po
+++ b/applications/luci-app-statistics/po/vi/statistics.po
@@ -29,6 +29,9 @@ msgstr ""
msgid "Add notification command"
msgstr "Thêm lệnh thông báo"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "Thư mục Cơ sở"
@@ -62,9 +65,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Những cài đặt collectd"
@@ -131,6 +131,12 @@ msgstr "Email"
msgid "Enable this plugin"
msgstr "Kích hoạt plugin này"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -149,6 +155,15 @@ msgstr "Flush cache sau khi"
msgid "Forwarding between listen and server addresses"
msgstr "chuyển tiếp giữa listen và địa chỉ server"
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "Graphs"
@@ -178,6 +193,9 @@ msgstr ""
"Ở đây bạn có thể định nghĩa những tiêu chuẩn khác nhau để monitor iptables "
"rules được chọn."
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -241,6 +259,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr "Monitor tất cả local listen port"
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Monitor devices"
@@ -304,6 +325,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr "Chỉ tạo trung bình RRAs"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "Tùy chọn"
@@ -361,12 +391,24 @@ msgstr ""
msgid "Seconds"
msgstr "Giây"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "Server host"
msgid "Server port"
msgstr "Server port"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr "Shaping class monitoring"
@@ -415,9 +457,6 @@ msgstr "Lưu timspans"
msgid "System Load"
msgstr "System Load"
-msgid "System plugins"
-msgstr "System plugins"
-
msgid "TCP Connections"
msgstr "Kết nối TCP"
@@ -442,6 +481,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -488,6 +532,9 @@ msgstr ""
"Mail::SpamAssasin::Plugin::Collectd nhưng cũng có thể dùng trong những cách "
"khác."
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -539,7 +586,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
"Network plugin cung cấp network dựa trên giao tiếp giữa những collectd "
@@ -574,18 +621,20 @@ msgstr ""
"sử dụng được</strong>"
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"Gói thống kê dựa trên <a href=\"http://collectd.org/index.shtml\">Collectd</"
-"a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD Tool</a> vẽ lại "
-"sơ đồ hình ảnh từ dữ liệu thu thập ."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -638,6 +687,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "Tập tin PID đã sử dụng"
@@ -653,6 +705,10 @@ msgstr "Mạng không dây"
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "e.g. br-ff"
@@ -674,6 +730,21 @@ msgstr "giây; nhiều phân tách bởi khoảng trống"
msgid "server interfaces"
msgstr "giao diện server"
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "System plugins"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "Gói thống kê dựa trên <a href=\"http://collectd.org/index.shtml"
+#~ "\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
+#~ "Tool</a> vẽ lại sơ đồ hình ảnh từ dữ liệu thu thập ."
+
#~ msgid ""
#~ "The wireless plugin collects statistics about wireless signal strength, "
#~ "noise and quality."
diff --git a/applications/luci-app-statistics/po/zh-cn/statistics.po b/applications/luci-app-statistics/po/zh-cn/statistics.po
index ea765d4521..4714ab5e80 100644
--- a/applications/luci-app-statistics/po/zh-cn/statistics.po
+++ b/applications/luci-app-statistics/po/zh-cn/statistics.po
@@ -28,6 +28,9 @@ msgstr "使用空格分隔多个主机"
msgid "Add notification command"
msgstr "新增通知命令"
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr "基本目录"
@@ -61,9 +64,6 @@ msgstr "收集路由"
msgid "CollectTopology"
msgstr "收集拓扑"
-msgid "Collectd"
-msgstr "Collectd"
-
msgid "Collectd Settings"
msgstr "Collectd设置"
@@ -129,6 +129,12 @@ msgstr "电子邮件"
msgid "Enable this plugin"
msgstr "启用该插件"
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr "Exec"
@@ -147,6 +153,15 @@ msgstr "清空缓存后"
msgid "Forwarding between listen and server addresses"
msgstr "转发监听服务器和应用服务器之间数据"
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr "图表"
@@ -173,6 +188,9 @@ msgid ""
"are selected."
msgstr "在这里,你可以定义各种监控iptables规则临界值。"
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr "主机"
@@ -236,6 +254,9 @@ msgstr "监测所有(除特别注明外)"
msgid "Monitor all local listen ports"
msgstr "监测所有本地监听端口"
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr "监测设备"
@@ -299,6 +320,15 @@ msgstr "OLSRd插件配置"
msgid "Only create average RRAs"
msgstr "仅创建平均RRAs"
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr "选项"
@@ -356,12 +386,24 @@ msgstr "脚本"
msgid "Seconds"
msgstr "秒"
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr "服务器主机"
msgid "Server port"
msgstr "服务器端口"
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr "整形类监控"
@@ -410,9 +452,6 @@ msgstr "存储时间跨度"
msgid "System Load"
msgstr "系统加载"
-msgid "System plugins"
-msgstr "系统插件"
-
msgid "TCP Connections"
msgstr "TCP连接数"
@@ -437,6 +476,11 @@ msgid ""
msgstr "OLSRd插件通过txtinfo获取meshed网络信息。"
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr "conntrack插件获取连接数信息。"
@@ -474,6 +518,9 @@ msgstr ""
"这个插件主要目的是结合使用Mail::SpamAssasin::Pulgin::Collectd,但可以用在其他"
"方面。"
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -515,7 +562,7 @@ msgstr "netlink插件,收集为选定接口qdisc-、class-和filter- 的扩展
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
"network插件,提供了基于网络的不同Collectd实例。Collectd可以工作在客户端和服务"
@@ -543,18 +590,20 @@ msgstr ""
"使用!</strong>"
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
-"统计软件包是基于<a href=\"http://collectd.org/index.shtml\">Collectd</a>,并"
-"使用<a href=\"http://oss.oetiker.ch/rrdtool/\">RRD工具</a>来渲染图表,用于收"
-"集数据。"
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -602,6 +651,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr "正在使用的PID文件"
@@ -617,6 +669,10 @@ msgstr "无线"
msgid "Wireless iwinfo Plugin Configuration"
msgstr "无线iwinfo插件配置"
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr "例如:br-ff"
@@ -638,5 +694,20 @@ msgstr "秒数;多个使用空格分隔"
msgid "server interfaces"
msgstr "服务器接口"
+#~ msgid "Collectd"
+#~ msgstr "Collectd"
+
+#~ msgid "System plugins"
+#~ msgstr "系统插件"
+
+#~ msgid ""
+#~ "The statistics package is based on <a href=\"http://collectd.org/index."
+#~ "shtml\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/"
+#~ "\">RRD Tool</a> to render diagram images from collected data."
+#~ msgstr ""
+#~ "统计软件包是基于<a href=\"http://collectd.org/index.shtml\">Collectd</a>,"
+#~ "并使用<a href=\"http://oss.oetiker.ch/rrdtool/\">RRD工具</a>来渲染图表,用"
+#~ "于收集数据。"
+
#~ msgid "group name"
#~ msgstr "群名称"
diff --git a/applications/luci-app-statistics/po/zh-tw/statistics.po b/applications/luci-app-statistics/po/zh-tw/statistics.po
index 1c974769fb..367f567245 100644
--- a/applications/luci-app-statistics/po/zh-tw/statistics.po
+++ b/applications/luci-app-statistics/po/zh-tw/statistics.po
@@ -22,6 +22,9 @@ msgstr ""
msgid "Add notification command"
msgstr ""
+msgid "Aggregate number of connected users"
+msgstr ""
+
msgid "Base Directory"
msgstr ""
@@ -55,9 +58,6 @@ msgstr ""
msgid "CollectTopology"
msgstr ""
-msgid "Collectd"
-msgstr ""
-
msgid "Collectd Settings"
msgstr ""
@@ -121,6 +121,12 @@ msgstr ""
msgid "Enable this plugin"
msgstr ""
+msgid "Entropy"
+msgstr ""
+
+msgid "Entropy Plugin Configuration"
+msgstr ""
+
msgid "Exec"
msgstr ""
@@ -139,6 +145,15 @@ msgstr ""
msgid "Forwarding between listen and server addresses"
msgstr ""
+msgid "Gather compression statistics"
+msgstr ""
+
+msgid "General plugins"
+msgstr ""
+
+msgid "Generate a separate graph for each logged user"
+msgstr ""
+
msgid "Graphs"
msgstr ""
@@ -161,6 +176,9 @@ msgid ""
"are selected."
msgstr ""
+msgid "Hold Ctrl to select multiple items or to deselect entries."
+msgstr ""
+
msgid "Host"
msgstr ""
@@ -224,6 +242,9 @@ msgstr ""
msgid "Monitor all local listen ports"
msgstr ""
+msgid "Monitor all sensors"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -287,6 +308,15 @@ msgstr ""
msgid "Only create average RRAs"
msgstr ""
+msgid "OpenVPN"
+msgstr ""
+
+msgid "OpenVPN Plugin Configuration"
+msgstr ""
+
+msgid "OpenVPN status files"
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -344,12 +374,24 @@ msgstr ""
msgid "Seconds"
msgstr ""
+msgid "Sensor list"
+msgstr ""
+
+msgid "Sensors"
+msgstr ""
+
+msgid "Sensors Plugin Configuration"
+msgstr ""
+
msgid "Server host"
msgstr ""
msgid "Server port"
msgstr ""
+msgid "Setup"
+msgstr ""
+
msgid "Shaping class monitoring"
msgstr ""
@@ -398,9 +440,6 @@ msgstr ""
msgid "System Load"
msgstr ""
-msgid "System plugins"
-msgstr ""
-
msgid "TCP Connections"
msgstr ""
@@ -425,6 +464,11 @@ msgid ""
msgstr ""
msgid ""
+"The OpenVPN plugin gathers information about the current vpn connection "
+"status."
+msgstr ""
+
+msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
msgstr ""
@@ -459,6 +503,9 @@ msgid ""
"be used in other ways as well."
msgstr ""
+msgid "The entropy plugin collects statistics about the available entropy."
+msgstr ""
+
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
@@ -497,7 +544,7 @@ msgstr ""
msgid ""
"The network plugin provides network based communication between different "
"collectd instances. Collectd can operate both in client and server mode. In "
-"client mode locally collected date is transferred to a collectd server "
+"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
@@ -519,14 +566,19 @@ msgid ""
msgstr ""
msgid ""
+"The sensors plugin uses the Linux Sensors framework to gather environmental "
+"statistics."
+msgstr ""
+
+msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
msgid ""
-"The statistics package is based on <a href=\"http://collectd.org/index.shtml"
-"\">Collectd</a> and uses <a href=\"http://oss.oetiker.ch/rrdtool/\">RRD "
-"Tool</a> to render diagram images from collected data."
+"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
+"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
+"render diagram images."
msgstr ""
msgid ""
@@ -575,6 +627,9 @@ msgstr ""
msgid "Uptime Plugin Configuration"
msgstr ""
+msgid "Use improved naming schema"
+msgstr ""
+
msgid "Used PID file"
msgstr ""
@@ -590,6 +645,10 @@ msgstr ""
msgid "Wireless iwinfo Plugin Configuration"
msgstr ""
+msgid ""
+"You can install additional collectd-mod-* plugins to enable more statistics."
+msgstr ""
+
msgid "e.g. br-ff"
msgstr ""
diff --git a/applications/luci-app-statistics/root/etc/config/luci_statistics b/applications/luci-app-statistics/root/etc/config/luci_statistics
index abcee3e938..de16f29de9 100644
--- a/applications/luci-app-statistics/root/etc/config/luci_statistics
+++ b/applications/luci-app-statistics/root/etc/config/luci_statistics
@@ -140,6 +140,9 @@ config statistics 'collectd_processes'
option enable '0'
option Processes 'uhttpd dnsmasq dropbear'
+config statistics 'collectd_sensors'
+ option enable '0'
+
config statistics 'collectd_splash_leases'
option enable '0'
diff --git a/applications/luci-app-statistics/root/usr/bin/stat-genconfig b/applications/luci-app-statistics/root/usr/bin/stat-genconfig
index 8acae46c61..49d8a09935 100755
--- a/applications/luci-app-statistics/root/usr/bin/stat-genconfig
+++ b/applications/luci-app-statistics/root/usr/bin/stat-genconfig
@@ -187,9 +187,9 @@ function _list_expand( c, l, nopad )
end
if n:find("(%w+)ses") then
- k = n:gsub("(%w+)ses", "%1s")
+ k = n:gsub("(%w+)ses$", "%1s")
else
- k = n:gsub("(%w+)s", "%1")
+ k = n:gsub("(%w+)s$", "%1")
end
str = str .. _expand( c[n], k, nopad )
@@ -375,6 +375,12 @@ plugins = {
{ }
},
+ openvpn = {
+ { },
+ { "CollectIndividualUsers", "CollectUserCount", "CollectCompression", "ImprovedNamingSchema" },
+ { "StatusFile" }
+ },
+
ping = {
{ "TTL", "Interval" },
{ },
@@ -393,6 +399,12 @@ plugins = {
{ "RRATimespans" }
},
+ sensors = {
+ { },
+ { "IgnoreSelected" },
+ { "Sensor" }
+ },
+
splash_leases = {
{ },
{ },
diff --git a/applications/luci-app-tinyproxy/luasrc/view/tinyproxy_status.htm b/applications/luci-app-tinyproxy/luasrc/view/tinyproxy_status.htm
index c85a206bd3..d43a887b07 100644
--- a/applications/luci-app-tinyproxy/luasrc/view/tinyproxy_status.htm
+++ b/applications/luci-app-tinyproxy/luasrc/view/tinyproxy_status.htm
@@ -41,7 +41,7 @@ end
<%+header%>
<div class="cbi-map">
- <h2><a id="content" name="content"><%:Tinyproxy Status%></a></h2>
+ <h2 name="content"><%:Tinyproxy Status%></h2>
<div class="cbi-section">
<iframe src="<%=REQUESTURL%>?frame=1" style="width:100%; height:350px; border:none"></iframe>
</div>
diff --git a/applications/luci-app-upnp/luasrc/controller/upnp.lua b/applications/luci-app-upnp/luasrc/controller/upnp.lua
index 790bf29d8c..c60b7c4969 100644
--- a/applications/luci-app-upnp/luasrc/controller/upnp.lua
+++ b/applications/luci-app-upnp/luasrc/controller/upnp.lua
@@ -11,11 +11,11 @@ function index()
local page
- page = entry({"admin", "services", "upnp"}, cbi("upnp/upnp"), _("UPNP"))
+ page = entry({"admin", "services", "upnp"}, cbi("upnp/upnp"), _("UPnP"))
page.dependent = true
entry({"admin", "services", "upnp", "status"}, call("act_status")).leaf = true
- entry({"admin", "services", "upnp", "delete"}, call("act_delete")).leaf = true
+ entry({"admin", "services", "upnp", "delete"}, post("act_delete")).leaf = true
end
function act_status()
diff --git a/applications/luci-app-upnp/luasrc/view/upnp_status.htm b/applications/luci-app-upnp/luasrc/view/upnp_status.htm
index d50ed0c4d7..e358dcded3 100644
--- a/applications/luci-app-upnp/luasrc/view/upnp_status.htm
+++ b/applications/luci-app-upnp/luasrc/view/upnp_status.htm
@@ -1,6 +1,6 @@
<script type="text/javascript">//<![CDATA[
function upnp_delete_fwd(idx) {
- XHR.get('<%=luci.dispatcher.build_url("admin", "services", "upnp", "delete")%>/' + idx, null,
+ (new XHR()).post('<%=url('admin/services/upnp/delete')%>/' + idx, { token: '<%=token%>' },
function(x)
{
var tb = document.getElementById('upnp_status_table');
@@ -10,7 +10,7 @@
);
}
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "services", "upnp", "status")%>', null,
+ XHR.poll(5, '<%=url('admin/services/upnp/status')%>', null,
function(x, st)
{
var tb = document.getElementById('upnp_status_table');
diff --git a/applications/luci-app-upnp/po/ca/upnp.po b/applications/luci-app-upnp/po/ca/upnp.po
index 3176bb516f..bb9f88f773 100644
--- a/applications/luci-app-upnp/po/ca/upnp.po
+++ b/applications/luci-app-upnp/po/ca/upnp.po
@@ -124,8 +124,8 @@ msgstr "Inicia el servei UPnP i NAP-PMP"
msgid "There are no active redirects."
msgstr "No hi ha redireccions actives."
-msgid "UPNP"
-msgstr "UPNP"
+msgid "UPnP"
+msgstr "UPnP"
msgid ""
"UPnP allows clients in the local network to automatically configure the "
diff --git a/applications/luci-app-upnp/po/cs/upnp.po b/applications/luci-app-upnp/po/cs/upnp.po
index a712f8262b..3cefdcc10b 100644
--- a/applications/luci-app-upnp/po/cs/upnp.po
+++ b/applications/luci-app-upnp/po/cs/upnp.po
@@ -120,8 +120,8 @@ msgstr "Spustit službu UPnP a NAT-PMP"
msgid "There are no active redirects."
msgstr "Nejsou zde žádná aktivní přesměrování"
-msgid "UPNP"
-msgstr "UPNP"
+msgid "UPnP"
+msgstr "UPnP"
msgid ""
"UPnP allows clients in the local network to automatically configure the "
diff --git a/applications/luci-app-upnp/po/de/upnp.po b/applications/luci-app-upnp/po/de/upnp.po
index 2edd93c5dc..fe6532dea5 100644
--- a/applications/luci-app-upnp/po/de/upnp.po
+++ b/applications/luci-app-upnp/po/de/upnp.po
@@ -122,7 +122,7 @@ msgstr "UPnP und NAT-PMP Dienst starten"
msgid "There are no active redirects."
msgstr "Es gibt keine aktiven Weiterleitungen."
-msgid "UPNP"
+msgid "UPnP"
msgstr "UPnP"
msgid ""
diff --git a/applications/luci-app-upnp/po/el/upnp.po b/applications/luci-app-upnp/po/el/upnp.po
index 775a7f70c8..8b4fa0cb10 100644
--- a/applications/luci-app-upnp/po/el/upnp.po
+++ b/applications/luci-app-upnp/po/el/upnp.po
@@ -119,7 +119,7 @@ msgstr ""
msgid "There are no active redirects."
msgstr ""
-msgid "UPNP"
+msgid "UPnP"
msgstr ""
msgid ""
diff --git a/applications/luci-app-upnp/po/en/upnp.po b/applications/luci-app-upnp/po/en/upnp.po
index 72d21bae51..215b34ca5b 100644
--- a/applications/luci-app-upnp/po/en/upnp.po
+++ b/applications/luci-app-upnp/po/en/upnp.po
@@ -119,7 +119,7 @@ msgstr ""
msgid "There are no active redirects."
msgstr ""
-msgid "UPNP"
+msgid "UPnP"
msgstr ""
msgid ""
diff --git a/applications/luci-app-upnp/po/es/upnp.po b/applications/luci-app-upnp/po/es/upnp.po
index 79a2800975..91e1393b20 100644
--- a/applications/luci-app-upnp/po/es/upnp.po
+++ b/applications/luci-app-upnp/po/es/upnp.po
@@ -122,7 +122,7 @@ msgstr "Arrancar servicio UPnP y NAT-PMP"
msgid "There are no active redirects."
msgstr "Sin redirecciones activas."
-msgid "UPNP"
+msgid "UPnP"
msgstr "UPnP"
msgid ""
diff --git a/applications/luci-app-upnp/po/fr/upnp.po b/applications/luci-app-upnp/po/fr/upnp.po
index 0cdb86d15a..4390d0f1fe 100644
--- a/applications/luci-app-upnp/po/fr/upnp.po
+++ b/applications/luci-app-upnp/po/fr/upnp.po
@@ -125,8 +125,8 @@ msgstr "Démarrer les services UPnP et NAT-PMP"
msgid "There are no active redirects."
msgstr "Il n'y a pas de redirections actives."
-msgid "UPNP"
-msgstr "UPNP"
+msgid "UPnP"
+msgstr "UPnP"
msgid ""
"UPnP allows clients in the local network to automatically configure the "
diff --git a/applications/luci-app-upnp/po/he/upnp.po b/applications/luci-app-upnp/po/he/upnp.po
index d67355095f..6e4d1f196e 100644
--- a/applications/luci-app-upnp/po/he/upnp.po
+++ b/applications/luci-app-upnp/po/he/upnp.po
@@ -115,7 +115,7 @@ msgstr ""
msgid "There are no active redirects."
msgstr ""
-msgid "UPNP"
+msgid "UPnP"
msgstr ""
msgid ""
diff --git a/applications/luci-app-upnp/po/hu/upnp.po b/applications/luci-app-upnp/po/hu/upnp.po
index e4c5e12ec5..c5a2c26b2c 100644
--- a/applications/luci-app-upnp/po/hu/upnp.po
+++ b/applications/luci-app-upnp/po/hu/upnp.po
@@ -122,8 +122,8 @@ msgstr "UPnP és NAT-PMP szolgáltatás elindítása"
msgid "There are no active redirects."
msgstr "Nincsenek aktív átírányítások."
-msgid "UPNP"
-msgstr "UPNP"
+msgid "UPnP"
+msgstr "UPnP"
msgid ""
"UPnP allows clients in the local network to automatically configure the "
diff --git a/applications/luci-app-upnp/po/it/upnp.po b/applications/luci-app-upnp/po/it/upnp.po
index a8ef2e98a9..9ef09ea048 100644
--- a/applications/luci-app-upnp/po/it/upnp.po
+++ b/applications/luci-app-upnp/po/it/upnp.po
@@ -122,8 +122,8 @@ msgstr "Avvia il servizo UPnP e NAT-PMP"
msgid "There are no active redirects."
msgstr "Non ci sono mappature attive."
-msgid "UPNP"
-msgstr "UPNP"
+msgid "UPnP"
+msgstr "UPnP"
msgid ""
"UPnP allows clients in the local network to automatically configure the "
diff --git a/applications/luci-app-upnp/po/ja/upnp.po b/applications/luci-app-upnp/po/ja/upnp.po
index 79e2153600..ec9208d257 100644
--- a/applications/luci-app-upnp/po/ja/upnp.po
+++ b/applications/luci-app-upnp/po/ja/upnp.po
@@ -122,7 +122,7 @@ msgstr "UPnP及びNAT-PMPサービスを開始する"
msgid "There are no active redirects."
msgstr "有効なリダイレクトはありません。"
-msgid "UPNP"
+msgid "UPnP"
msgstr "UPnP"
msgid ""
diff --git a/applications/luci-app-upnp/po/ms/upnp.po b/applications/luci-app-upnp/po/ms/upnp.po
index c3e71846d7..b4dce32c9b 100644
--- a/applications/luci-app-upnp/po/ms/upnp.po
+++ b/applications/luci-app-upnp/po/ms/upnp.po
@@ -114,7 +114,7 @@ msgstr ""
msgid "There are no active redirects."
msgstr ""
-msgid "UPNP"
+msgid "UPnP"
msgstr ""
msgid ""
diff --git a/applications/luci-app-upnp/po/no/upnp.po b/applications/luci-app-upnp/po/no/upnp.po
index 37ff9bff67..d528aa54eb 100644
--- a/applications/luci-app-upnp/po/no/upnp.po
+++ b/applications/luci-app-upnp/po/no/upnp.po
@@ -113,7 +113,7 @@ msgstr "Start UPnP og NAT-PMP tjenesten"
msgid "There are no active redirects."
msgstr "Det finnes ingen aktive viderekoblinger"
-msgid "UPNP"
+msgid "UPnP"
msgstr ""
msgid ""
diff --git a/applications/luci-app-upnp/po/pl/upnp.po b/applications/luci-app-upnp/po/pl/upnp.po
index e891dce488..ab7818011d 100644
--- a/applications/luci-app-upnp/po/pl/upnp.po
+++ b/applications/luci-app-upnp/po/pl/upnp.po
@@ -121,7 +121,7 @@ msgstr "Uruchom usługi UPnP i NAT-PMP"
msgid "There are no active redirects."
msgstr "Nie ma aktywnych przekierowań"
-msgid "UPNP"
+msgid "UPnP"
msgstr "UPnP"
msgid ""
diff --git a/applications/luci-app-upnp/po/pt-br/upnp.po b/applications/luci-app-upnp/po/pt-br/upnp.po
index ae9e7fe076..c16aa11f84 100644
--- a/applications/luci-app-upnp/po/pt-br/upnp.po
+++ b/applications/luci-app-upnp/po/pt-br/upnp.po
@@ -123,7 +123,7 @@ msgstr "Dispare os serviços de UPnP e NAT-PMP"
msgid "There are no active redirects."
msgstr "Não existe redirecionamentos ativos."
-msgid "UPNP"
+msgid "UPnP"
msgstr ""
"<abbr title=\"Universal Plug and Play, Plugue e Use Universal\">UPnP</abbr>"
diff --git a/applications/luci-app-upnp/po/pt/upnp.po b/applications/luci-app-upnp/po/pt/upnp.po
index 91c94f34df..1d001b694a 100644
--- a/applications/luci-app-upnp/po/pt/upnp.po
+++ b/applications/luci-app-upnp/po/pt/upnp.po
@@ -119,7 +119,7 @@ msgstr ""
msgid "There are no active redirects."
msgstr ""
-msgid "UPNP"
+msgid "UPnP"
msgstr ""
msgid ""
diff --git a/applications/luci-app-upnp/po/ro/upnp.po b/applications/luci-app-upnp/po/ro/upnp.po
index 84f515832a..f9c9500529 100644
--- a/applications/luci-app-upnp/po/ro/upnp.po
+++ b/applications/luci-app-upnp/po/ro/upnp.po
@@ -121,8 +121,8 @@ msgstr "Porneste UPnP si serviciul NAT-PMP"
msgid "There are no active redirects."
msgstr "Nu exista redirecturi active."
-msgid "UPNP"
-msgstr "UPNP"
+msgid "UPnP"
+msgstr "UPnP"
msgid ""
"UPnP allows clients in the local network to automatically configure the "
diff --git a/applications/luci-app-upnp/po/ru/upnp.po b/applications/luci-app-upnp/po/ru/upnp.po
index 626672bd2c..30b94cebf5 100644
--- a/applications/luci-app-upnp/po/ru/upnp.po
+++ b/applications/luci-app-upnp/po/ru/upnp.po
@@ -124,7 +124,7 @@ msgstr "Запустить службы UPnP и NAT-PMP"
msgid "There are no active redirects."
msgstr "Активные переадресации отсутствуют."
-msgid "UPNP"
+msgid "UPnP"
msgstr "UPnP"
msgid ""
diff --git a/applications/luci-app-upnp/po/sk/upnp.po b/applications/luci-app-upnp/po/sk/upnp.po
index 57631638de..c725333f3a 100644
--- a/applications/luci-app-upnp/po/sk/upnp.po
+++ b/applications/luci-app-upnp/po/sk/upnp.po
@@ -115,7 +115,7 @@ msgstr ""
msgid "There are no active redirects."
msgstr ""
-msgid "UPNP"
+msgid "UPnP"
msgstr ""
msgid ""
diff --git a/applications/luci-app-upnp/po/sv/upnp.po b/applications/luci-app-upnp/po/sv/upnp.po
index 11c20c140c..f0b564bb3e 100644
--- a/applications/luci-app-upnp/po/sv/upnp.po
+++ b/applications/luci-app-upnp/po/sv/upnp.po
@@ -116,7 +116,7 @@ msgstr ""
msgid "There are no active redirects."
msgstr ""
-msgid "UPNP"
+msgid "UPnP"
msgstr ""
msgid ""
diff --git a/applications/luci-app-upnp/po/templates/upnp.pot b/applications/luci-app-upnp/po/templates/upnp.pot
index 86aaee3437..ae390c4874 100644
--- a/applications/luci-app-upnp/po/templates/upnp.pot
+++ b/applications/luci-app-upnp/po/templates/upnp.pot
@@ -108,7 +108,7 @@ msgstr ""
msgid "There are no active redirects."
msgstr ""
-msgid "UPNP"
+msgid "UPnP"
msgstr ""
msgid ""
diff --git a/applications/luci-app-upnp/po/tr/upnp.po b/applications/luci-app-upnp/po/tr/upnp.po
index bf0e59a54f..cff3be2735 100644
--- a/applications/luci-app-upnp/po/tr/upnp.po
+++ b/applications/luci-app-upnp/po/tr/upnp.po
@@ -115,7 +115,7 @@ msgstr ""
msgid "There are no active redirects."
msgstr ""
-msgid "UPNP"
+msgid "UPnP"
msgstr ""
msgid ""
diff --git a/applications/luci-app-upnp/po/uk/upnp.po b/applications/luci-app-upnp/po/uk/upnp.po
index 7646109c78..93afd220be 100644
--- a/applications/luci-app-upnp/po/uk/upnp.po
+++ b/applications/luci-app-upnp/po/uk/upnp.po
@@ -122,7 +122,7 @@ msgstr "Запускати служби UPnP та NAT-PMP"
msgid "There are no active redirects."
msgstr "Немає активних переспрямувань"
-msgid "UPNP"
+msgid "UPnP"
msgstr "UPnP"
msgid ""
diff --git a/applications/luci-app-upnp/po/vi/upnp.po b/applications/luci-app-upnp/po/vi/upnp.po
index 7c7ea9d5cf..5f954999d2 100644
--- a/applications/luci-app-upnp/po/vi/upnp.po
+++ b/applications/luci-app-upnp/po/vi/upnp.po
@@ -120,7 +120,7 @@ msgstr ""
msgid "There are no active redirects."
msgstr ""
-msgid "UPNP"
+msgid "UPnP"
msgstr ""
msgid ""
diff --git a/applications/luci-app-upnp/po/zh-cn/upnp.po b/applications/luci-app-upnp/po/zh-cn/upnp.po
index 1749b9e7bd..693bbc12e9 100644
--- a/applications/luci-app-upnp/po/zh-cn/upnp.po
+++ b/applications/luci-app-upnp/po/zh-cn/upnp.po
@@ -120,8 +120,8 @@ msgstr "启动UPnP与NAT-PMP服务"
msgid "There are no active redirects."
msgstr "没有活动的重定向"
-msgid "UPNP"
-msgstr "UPNP"
+msgid "UPnP"
+msgstr "UPnP"
msgid ""
"UPnP allows clients in the local network to automatically configure the "
diff --git a/applications/luci-app-upnp/po/zh-tw/upnp.po b/applications/luci-app-upnp/po/zh-tw/upnp.po
index 356801b077..dde94ae497 100644
--- a/applications/luci-app-upnp/po/zh-tw/upnp.po
+++ b/applications/luci-app-upnp/po/zh-tw/upnp.po
@@ -118,7 +118,7 @@ msgstr "啓用UPnP跟NAT-PMP服務"
msgid "There are no active redirects."
msgstr "目前無作用中的從導"
-msgid "UPNP"
+msgid "UPnP"
msgstr "UPNP通用序列埠協定"
msgid ""
diff --git a/applications/luci-app-vnstat/luasrc/view/vnstat.htm b/applications/luci-app-vnstat/luasrc/view/vnstat.htm
index 2b502559b8..2b8d9ff9c9 100644
--- a/applications/luci-app-vnstat/luasrc/view/vnstat.htm
+++ b/applications/luci-app-vnstat/luasrc/view/vnstat.htm
@@ -56,7 +56,7 @@ dbdir = dbdir or "/var/lib/vnstat"
<%+header%>
-<h2><a id="content" name="content"><%:VnStat Graphs%></a></h2>
+<h2 name="content"><%:VnStat Graphs%></h2>
<form action="" method="get">
diff --git a/applications/luci-app-voice-core/Makefile b/applications/luci-app-voice-core/Makefile
index 3641bdd924..32c476ced7 100644
--- a/applications/luci-app-voice-core/Makefile
+++ b/applications/luci-app-voice-core/Makefile
@@ -7,7 +7,7 @@
include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI Voice Software (Core)
-LUCI_DEPENDS:=
+LUCI_DEPENDS:=@BROKEN
include ../../luci.mk
diff --git a/applications/luci-app-voice-core/luasrc/view/luci_voice/index.htm b/applications/luci-app-voice-core/luasrc/view/luci_voice/index.htm
index a3503f8bdf..e14862e7d1 100644
--- a/applications/luci-app-voice-core/luasrc/view/luci_voice/index.htm
+++ b/applications/luci-app-voice-core/luasrc/view/luci_voice/index.htm
@@ -4,7 +4,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content">Voice</a></h2>
+<h2 name="content">Voice</h2>
<p>Here you can control OpenWRT voice-related settings and see
voice-related information from OpenWRT</p>
<p>In particular Asterisk configuration and information is displayed
diff --git a/applications/luci-app-voice-core/luasrc/view/luci_voice/phone_index.htm b/applications/luci-app-voice-core/luasrc/view/luci_voice/phone_index.htm
index e3e88b3705..c4466cbf06 100644
--- a/applications/luci-app-voice-core/luasrc/view/luci_voice/phone_index.htm
+++ b/applications/luci-app-voice-core/luasrc/view/luci_voice/phone_index.htm
@@ -4,7 +4,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content">Phones</a></h2>
+<h2 name="content">Phones</h2>
<p>Here you can control phone configuration and information in OpenWRT</p>
<p>You can control the setup of phone clients and servers and see
information such as diagnostics related to phone devices from this menu.
diff --git a/applications/luci-app-voice-diag/Makefile b/applications/luci-app-voice-diag/Makefile
index c9c9a2036f..2d4791845a 100644
--- a/applications/luci-app-voice-diag/Makefile
+++ b/applications/luci-app-voice-diag/Makefile
@@ -7,7 +7,7 @@
include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI Voice Software (Diagnostics)
-LUCI_DEPENDS:=+luci-app-diag-devinfo
+LUCI_DEPENDS:=+luci-app-diag-devinfo @BROKEN
include ../../luci.mk
diff --git a/applications/luci-app-voice-diag/luasrc/view/luci_voice/diag_index.htm b/applications/luci-app-voice-diag/luasrc/view/luci_voice/diag_index.htm
index 15ccc39e41..e324fabd41 100644
--- a/applications/luci-app-voice-diag/luasrc/view/luci_voice/diag_index.htm
+++ b/applications/luci-app-voice-diag/luasrc/view/luci_voice/diag_index.htm
@@ -4,7 +4,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content"><%:Diagnostics%></a></h2>
+<h2 name="content"><%:Diagnostics%></h2>
<p><%:Under this menu are options that allow you to configure and perform tests on the voice operations of your system. These are known as diagnostics.%></p>
<p><%:The diagnostics available on your device depend on the modules that you have installed.%></p>
<%+footer%>