From 05cce164f723811de8d79a23be190caed0620756 Mon Sep 17 00:00:00 2001 From: walking Date: Mon, 26 Oct 2009 10:53:53 +0000 Subject: [PATCH] all tagged all java except : - summerbar related files since drz is working on it - string requiring word reordering - string with link in the middle - string which looks unusual - string found not in router console source update the POs --- .../i2p/router/web/ConfigClientsHandler.java | 22 +- .../i2p/router/web/ConfigKeyringHandler.java | 14 +- .../net/i2p/router/web/ConfigPeerHandler.java | 22 +- .../i2p/router/web/ConfigTunnelsHandler.java | 4 +- .../i2p/router/web/ConfigTunnelsHelper.java | 70 +- .../src/net/i2p/router/web/NetDbRenderer.java | 50 +- .../net/i2p/router/web/TunnelRenderer.java | 42 +- apps/routerconsole/jsp/configadvanced.jsp | 4 +- apps/routerconsole/jsp/configclients.jsp | 4 +- apps/routerconsole/jsp/configkeyring.jsp | 4 +- apps/routerconsole/jsp/configlogging.jsp | 4 +- apps/routerconsole/jsp/configpeer.jsp | 6 +- apps/routerconsole/jsp/configservice.jsp | 22 +- apps/routerconsole/jsp/configui.jsp | 2 +- apps/routerconsole/locale/messages_de.po | 600 ++++++++++++++--- apps/routerconsole/locale/messages_zh.po | 602 +++++++++++++++--- .../themes/console/classic/console_big.css | 22 +- 17 files changed, 1184 insertions(+), 310 deletions(-) diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHandler.java index d2f4d8e64..2df83d086 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHandler.java @@ -29,9 +29,9 @@ public class ConfigClientsHandler extends FormHandler { @Override protected void processForm() { - if (_action.startsWith("Save Client")) { + if (_action.equals(_("Save Client Configuration"))) { saveClientChanges(); - } else if (_action.startsWith("Save WebApp")) { + } else if (_action.equals(_("Save WebApp Configuration"))) { saveWebAppChanges(); } else if (_action.startsWith("Start ")) { String app = _action.substring(6); @@ -43,7 +43,7 @@ public class ConfigClientsHandler extends FormHandler { startClient(appnum); else startWebApp(app); - } else if (_action.toLowerCase().startsWith("start ") && + } else if (_action.toLowerCase().startsWith("Start ") && _action.toLowerCase().endsWith("")) { // IE sucks String app = _action.substring(23, _action.length() - 7); @@ -56,7 +56,7 @@ public class ConfigClientsHandler extends FormHandler { else startWebApp(app); } else { - addFormError("Unsupported " + _action + "."); + addFormError(_("Unsupported") + " " + _action + "."); } } @@ -71,18 +71,18 @@ public class ConfigClientsHandler extends FormHandler { ca.disabled = val == null; } ClientAppConfig.writeClientAppConfig(_context, clients); - addFormNotice("Client configuration saved successfully - restart required to take effect."); + addFormNotice(_("Client configuration saved successfully - restart required to take effect.")); } private void startClient(int i) { List clients = ClientAppConfig.getClientApps(_context); if (i >= clients.size()) { - addFormError("Bad client index."); + addFormError(_("Bad client index.")); return; } ClientAppConfig ca = (ClientAppConfig) clients.get(i); LoadClientAppsJob.runClient(ca.className, ca.clientName, LoadClientAppsJob.parseArgs(ca.args), configClient_log); - addFormNotice("Client " + ca.clientName + " started."); + addFormNotice(_("Client") + " " + ca.clientName + " " + _("started") + "."); } private void saveWebAppChanges() { @@ -99,7 +99,7 @@ public class ConfigClientsHandler extends FormHandler { props.setProperty(name, "" + (val != null)); } RouterConsoleRunner.storeWebAppProperties(props); - addFormNotice("WebApp configuration saved successfully - restart required to take effect."); + addFormNotice(_("WebApp configuration saved successfully - restart required to take effect.")); } // Big hack for the moment, not using properties for directory and port @@ -117,14 +117,14 @@ public class ConfigClientsHandler extends FormHandler { path = new File(path, app + ".war"); s.addWebApplication("/"+ app, path.getAbsolutePath()).start(); // no passwords... initialize(wac); - addFormNotice("WebApp " + app + " started."); + addFormNotice("WebApp " + app + " " + _("started") + "."); } catch (Exception ioe) { - addFormError("Failed to start " + app + " " + ioe + "."); + addFormError(_("Failed to start") + " " + app + " " + ioe + "."); } return; } } } - addFormError("Failed to find server."); + addFormError(_("Failed to find server.")); } } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigKeyringHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigKeyringHandler.java index cb54c77ff..271ac5819 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigKeyringHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigKeyringHandler.java @@ -15,12 +15,12 @@ public class ConfigKeyringHandler extends FormHandler { @Override protected void processForm() { if (_action == null) return; - boolean adding = _action.startsWith("Add"); - if (adding || _action.startsWith("Delete")) { + boolean adding = _action.equals(_("Add key")); + if (adding || _action.equals(_("Delete key"))) { if (_peer == null) - addFormError("You must enter a destination"); + addFormError(_("You must enter a destination")); if (_key == null && adding) - addFormError("You must enter a key"); + addFormError(_("You must enter a key")); if (_peer == null || (_key == null && adding)) return; Hash h = ConvertToHash.getHash(_peer); @@ -33,7 +33,7 @@ public class ConfigKeyringHandler extends FormHandler { _context.keyRing().put(h, sk); addFormNotice("Key for " + h.toBase64() + " added to keyring"); } else { - addFormError("Invalid destination or key"); + addFormError(_("Invalid destination or key")); } } else { // Delete if (h != null && h.getData() != null) { @@ -42,11 +42,11 @@ public class ConfigKeyringHandler extends FormHandler { else addFormNotice("Key for " + h.toBase64() + " not found in keyring"); } else { - addFormError("Invalid destination"); + addFormError(_("Invalid destination")); } } } else { - addFormError("Unsupported"); + addFormError(_("Unsupported")); } } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigPeerHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigPeerHandler.java index 479aeb4c2..b4ca7bb40 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigPeerHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigPeerHandler.java @@ -17,26 +17,26 @@ public class ConfigPeerHandler extends FormHandler { if ("Save Configuration".equals(_action)) { _context.router().saveConfig(); addFormNotice("Settings saved - not really!!!!!"); - } else if (_action.startsWith("Ban")) { + } else if (_action.equals(_("Ban peer until restart"))) { Hash h = getHash(); if (h != null) { _context.shitlist().shitlistRouterForever(h, "Manually banned via configpeer.jsp"); - addFormNotice("Peer " + _peer + " banned until restart"); + addFormNotice(_("Peer") + " " + _peer + " " + _("banned until restart") ); return; } - addFormError("Invalid peer"); - } else if (_action.startsWith("Unban")) { + addFormError(_("Invalid peer")); + } else if (_action.equals(_("Unban peer"))) { Hash h = getHash(); if (h != null) { if (_context.shitlist().isShitlisted(h)) { _context.shitlist().unshitlistRouter(h); - addFormNotice("Peer " + _peer + " unbanned"); + addFormNotice(_("Peer") + " " + _peer + " " + _("unbanned") ); } else - addFormNotice("Peer " + _peer + " is not currently banned"); + addFormNotice(_("Peer") + " " + _peer + " " + _("is not currently banned") ); return; } - addFormError("Invalid peer"); - } else if (_action.startsWith("Adjust")) { + addFormError(_("Invalid peer")); + } else if (_action.equals(_("Adjust Profile Bonuses"))) { Hash h = getHash(); if (h != null) { PeerProfile prof = _context.profileOrganizer().getProfile(h); @@ -44,19 +44,19 @@ public class ConfigPeerHandler extends FormHandler { try { prof.setSpeedBonus(Long.parseLong(_speed)); } catch (NumberFormatException nfe) { - addFormError("Bad speed value"); + addFormError(_("Bad speed value")); } try { prof.setCapacityBonus(Long.parseLong(_capacity)); } catch (NumberFormatException nfe) { - addFormError("Bad capacity value"); + addFormError(_("Bad capacity value")); } addFormNotice("Bonuses adjusted for " + _peer); } else addFormError("No profile exists for " + _peer); return; } - addFormError("Invalid peer"); + addFormError(_("Invalid peer")); } else if (_action.startsWith("Check")) { addFormError("Unsupported"); } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHandler.java index e54c92616..529bef9aa 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHandler.java @@ -137,9 +137,9 @@ public class ConfigTunnelsHandler extends FormHandler { if (saveRequired) { boolean saved = _context.router().saveConfig(); if (saved) - addFormNotice("Exploratory tunnel configuration saved successfully."); + addFormNotice(_("Exploratory tunnel configuration saved successfully.")); else - addFormNotice("Error saving the configuration (applied but not saved) - please see the error logs."); + addFormNotice(_("Error saving the configuration (applied but not saved) - please see the error logs.")); } } private static final int getInt(Object val) { diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHelper.java index 393476f06..ffc463d60 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHelper.java @@ -18,7 +18,7 @@ public class ConfigTunnelsHelper extends HelperBase { TunnelPoolSettings exploratoryOut = _context.tunnelManager().getOutboundSettings(); buf.append(""); - renderForm(buf, 0, "exploratory", "Exploratory tunnels", exploratoryIn, exploratoryOut); + renderForm(buf, 0, "exploratory", _("Exploratory tunnels"), exploratoryIn, exploratoryOut); int cur = 1; Set clients = _context.clientManager().listClients(); @@ -38,7 +38,7 @@ public class ConfigTunnelsHelper extends HelperBase { String prefix = dest.calculateHash().toBase64().substring(0,4); buf.append(""); - renderForm(buf, cur, prefix, "Client tunnels for " + name, in, out); + renderForm(buf, cur, prefix, _("Client tunnels for") + " " + name, in, out); cur++; } @@ -61,95 +61,95 @@ public class ConfigTunnelsHelper extends HelperBase { in.getLength() + in.getLengthVariance() <= 0 || out.getLength() <= 0 || out.getLength() + out.getLengthVariance() <= 0) - buf.append("ANONYMITY WARNING - Settings include 0-hop tunnels."); + buf.append("" + _("ANONYMITY WARNING - Settings include 0-hop tunnels.") + ""); else if (in.getLength() <= 1 || in.getLength() + in.getLengthVariance() <= 1 || out.getLength() <= 1 || out.getLength() + out.getLengthVariance() <= 1) - buf.append("ANONYMITY WARNING - Settings include 1-hop tunnels."); + buf.append("" + _("ANONYMITY WARNING - Settings include 1-hop tunnels.") + ""); if (in.getLength() + Math.abs(in.getLengthVariance()) >= WARN_LENGTH || out.getLength() + Math.abs(out.getLengthVariance()) >= WARN_LENGTH) - buf.append("PERFORMANCE WARNING - Settings include very long tunnels."); + buf.append("" + _("PERFORMANCE WARNING - Settings include very long tunnels.") + ""); if (in.getQuantity() + in.getBackupQuantity() >= WARN_QUANTITY || out.getQuantity() + out.getBackupQuantity() >= WARN_QUANTITY) - buf.append("PERFORMANCE WARNING - Settings include high tunnel quantities."); + buf.append("" + _("PERFORMANCE WARNING - Settings include high tunnel quantities.") + ""); -buf.append("\"Inbound\"  Inbound\"Outbound  Outbound\n"); +buf.append("\"Inbound\"  " + _("Inbound") + "\"Outbound  " + _("Outbound") + "\n"); // buf.append("InboundOutbound\n"); // tunnel depth - buf.append("Depth:\n"); + buf.append("" + _("Depth") + ":\n"); buf.append("\n"); buf.append("\n"); buf.append("\n"); // tunnel depth variance - buf.append("Randomization:\n"); + buf.append("" + _("Randomization") + ":\n"); buf.append("\n"); buf.append("\n"); // tunnel quantity - buf.append("Quantity:\n"); + buf.append("" + _("Quantity") + ":\n"); buf.append("\n"); buf.append("\n"); buf.append("\n"); // tunnel backup quantity - buf.append("Backup quantity:\n"); + buf.append("" + _("Backup quantity") + ":\n"); buf.append("\n"); buf.append("\n"); buf.append("\n"); @@ -159,7 +159,7 @@ buf.append(" 0) { - buf.append("Inbound options:\n" + + buf.append("" + _("Inbound options") + ":\n" + " 0) { - buf.append("Outbound options:\n" + + buf.append("" + _("Outbound options") + ":\n" + "Network Database RouterInfo Lookup\n"); + buf.append("

" + _("Network Database RouterInfo Lookup") + "

\n"); if (".".equals(routerPrefix)) { renderRouterInfo(buf, _context.router().getRouterInfo(), true, true); } else { @@ -70,7 +70,7 @@ public class NetDbRenderer { } } if (notFound) - buf.append("Router ").append(routerPrefix).append(" not found in network database"); + buf.append(_("Router") + " ").append(routerPrefix).append(" " + _("not found in network database") ); } out.write(buf.toString()); out.flush(); @@ -82,8 +82,8 @@ public class NetDbRenderer { public void renderLeaseSetHTML(Writer out) throws IOException { StringBuilder buf = new StringBuilder(4*1024); - buf.append("

Network Database Contents

\n"); - buf.append("View RouterInfo"); + buf.append("

" + _("Network Database Contents") + "

\n"); + buf.append("" + _("View") + " RouterInfo"); buf.append("

LeaseSets

\n"); Set leases = new TreeSet(new LeaseSetComparator()); leases.addAll(_context.netDb().getLeases()); @@ -94,17 +94,17 @@ public class NetDbRenderer { Hash key = dest.calculateHash(); buf.append("LeaseSet: ").append(key.toBase64()); if (_context.clientManager().isLocal(dest)) { - buf.append(" (Local "); + buf.append(" (" + _("Local") + " "); if (! _context.clientManager().shouldPublishLeaseSet(key)) - buf.append("Unpublished "); - buf.append("Destination "); + buf.append(_("Unpublished") + " "); + buf.append(_("Destination") + " "); TunnelPoolSettings in = _context.tunnelManager().getInboundSettings(key); if (in != null && in.getDestinationNickname() != null) buf.append(in.getDestinationNickname()); else buf.append(dest.toBase64().substring(0, 6)); } else { - buf.append(" (Destination "); + buf.append(" (" + _("Destination") + " "); String host = _context.namingService().reverseLookup(dest); if (host != null) buf.append(host); @@ -118,9 +118,9 @@ public class NetDbRenderer { else buf.append("Expired ").append(DataHelper.formatDuration(0-exp)).append(" ago
\n"); for (int i = 0; i < ls.getLeaseCount(); i++) { - buf.append("Lease ").append(i + 1).append(": Gateway "); + buf.append("Lease ").append(i + 1).append(": " + _("Gateway") + " "); buf.append(_context.commSystem().renderPeerHTML(ls.getLease(i).getGateway())); - buf.append(" Tunnel ").append(ls.getLease(i).getTunnelId().getTunnelId()).append("
\n"); + buf.append(" " + _("Tunnel") + " ").append(ls.getLease(i).getTunnelId().getTunnelId()).append("
\n"); } buf.append("
\n"); out.write(buf.toString()); @@ -135,21 +135,21 @@ public class NetDbRenderer { if (full) size *= 4; StringBuilder buf = new StringBuilder(size); - out.write("

Network Database Contents (View LeaseSets)

\n"); + out.write("

" + _("Network Database Contents") + " (" + _("View") + " LeaseSets)

\n"); if (!_context.netDb().isInitialized()) { - buf.append("Not initialized\n"); + buf.append("" + _("Not initialized") + "\n"); out.write(buf.toString()); out.flush(); return; } Hash us = _context.routerHash(); - out.write("

Routers (

" + _("Routers") + " (view without"); + out.write("#routers\" >" + _("view without") + ""); else - out.write("?f=1#routers\" >view with"); - out.write(" stats)

\n"); + out.write("?f=1#routers\" >" + _("view with") + ""); + out.write(" " + _("stats") + ")\n"); RouterInfo ourInfo = _context.router().getRouterInfo(); renderRouterInfo(buf, ourInfo, true, true); @@ -183,7 +183,7 @@ public class NetDbRenderer { if (versionList.size() > 0) { Collections.sort(versionList, Collections.reverseOrder()); buf.append("\n"); - buf.append("\n"); + buf.append("\n"); for (String routerVersion : versionList) { int num = versions.count(routerVersion); buf.append("
VersionCount
" + _("Version") + "" + _("Count") + "
").append(DataHelper.stripHTML(routerVersion)); @@ -199,7 +199,7 @@ public class NetDbRenderer { if (countryList.size() > 0) { Collections.sort(countryList); buf.append("\n"); - buf.append("\n"); + buf.append("\n"); for (String country : countryList) { int num = countries.count(country); buf.append("\n"); if (full) { - buf.append(" - +
CountryCount
" + _("Country") + "" + _("Count") + "
\"").append(country.toUpperCase()).append("\"");
"); if (isUs) { - buf.append("Our info: ").append(hash).append("
\n"); + buf.append("" + _("Our info") + ": ").append(hash).append("
\n"); } else { - buf.append("Peer info for: ").append(hash).append("\n"); + buf.append("" + _("Peer info for") + ": ").append(hash).append("\n"); if (full) { buf.append("[Back]
\n"); } else { @@ -234,12 +234,12 @@ public class NetDbRenderer { long age = _context.clock().now() - info.getPublished(); if (isUs && _context.router().isHidden()) - buf.append("Hidden, Updated: ").append(DataHelper.formatDuration(age)).append(" ago
\n"); + buf.append("" + _("Hidden") + ", " + _("Updated") + ": ").append(DataHelper.formatDuration(age)).append(" " + _("ago") + "
\n"); else if (age > 0) - buf.append("Published: ").append(DataHelper.formatDuration(age)).append(" ago
\n"); + buf.append("" + _("Published") + ": ").append(DataHelper.formatDuration(age)).append(" " + _("ago") + "
\n"); else - buf.append("Published: in ").append(DataHelper.formatDuration(0-age)).append("???
\n"); - buf.append("Address(es): "); + buf.append("" + _("Published") + ": in ").append(DataHelper.formatDuration(0-age)).append("???
\n"); + buf.append("" + _("Address(es)") + ": "); String country = _context.commSystem().getCountry(info.getIdentity().getHash()); if(country != null) { buf.append("\"").append(country.toUpperCase()).append("\"");
Stats:
\n"); + buf.append("
" + _("Stats") + ":
\n"); for (Iterator iter = info.getOptions().keySet().iterator(); iter.hasNext(); ) { String key = (String)iter.next(); String val = info.getOption(key); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/TunnelRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/TunnelRenderer.java index b1536c911..ad63d216a 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/TunnelRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/TunnelRenderer.java @@ -37,7 +37,7 @@ public class TunnelRenderer { } public void renderStatusHTML(Writer out) throws IOException { - out.write("

Exploratory tunnels (config):

\n"); + out.write("

" + _("Exploratory tunnels") + " (" + _("config") + "):

\n"); renderPool(out, _context.tunnelManager().getInboundExploratoryPool(), _context.tunnelManager().getOutboundExploratoryPool()); List destinations = null; @@ -56,9 +56,9 @@ public class TunnelRenderer { if (name == null) name = client.toBase64().substring(0,4); out.write("

Client tunnels for " + name); + + "\" >" + _("Client tunnels for") + " " + name); if (_context.clientManager().isLocal(client)) - out.write(" (config):

\n"); + out.write(" (" + _("config") + "):\n"); else out.write(" (dead):\n"); renderPool(out, in, outPool); @@ -66,10 +66,10 @@ public class TunnelRenderer { List participating = _context.tunnelDispatcher().listParticipatingTunnels(); Collections.sort(participating, new TunnelComparator()); - out.write("

Participating tunnels:

\n"); - out.write("" - + "\n"); + out.write("

" + _("Participating tunnels") + ":

Receive onFrom" - + "Send onToExpirationUsageRateRole
\n"); + out.write("" + + "\n"); long processed = 0; RateStat rs = _context.statManager().getRate("tunnel.participatingMessageCount"); if (rs != null) @@ -113,17 +113,17 @@ public class TunnelRenderer { int bps = 1024 * (int) cfg.getProcessedMessagesCount() / lifetime; out.write(" "); if (cfg.getSendTo() == null) - out.write(" "); + out.write(" "); else if (cfg.getReceiveFrom() == null) - out.write(" "); + out.write(" "); else - out.write(" "); + out.write(" "); out.write("\n"); processed += cfg.getProcessedMessagesCount(); } out.write("
" + _("Receive on") + "" + _("From") + "" + + "" + _("Send on") + "" + _("To") + "" + _("Expiration") + "" + _("Usage") + "" + _("Rate") + "" + _("Role") + "
" + bps + "BpsOutbound Endpoint" + _("Outbound Endpoint") + "Inbound Gateway" + _("Inbound Gateway") + "Participant" + _("Participant") + "
\n"); - out.write("
Inactive participating tunnels: " + inactive + "
\n"); - out.write("
Lifetime bandwidth usage: " + DataHelper.formatSize(processed*1024) + "B
\n"); + out.write("
" + _("Inactive participating tunnels") + ": " + inactive + "
\n"); + out.write("
" + _("Lifetime bandwidth usage") + ": " + DataHelper.formatSize(processed*1024) + "B
\n"); renderPeers(out); } @@ -152,16 +152,16 @@ public class TunnelRenderer { if (info.getLength() > maxLength) maxLength = info.getLength(); } - out.write(""); + out.write("
In/OutExpiryUsageGateway
"); if (maxLength > 3) { out.write(""); + out.write("\">" + _("Participants") + ""); } else if (maxLength == 3) { - out.write(""); + out.write(""); } if (maxLength > 1) { - out.write(""); + out.write(""); } out.write("\n"); for (int i = 0; i < tunnels.size(); i++) { @@ -201,17 +201,17 @@ public class TunnelRenderer { if (in != null) { List pending = in.listPending(); if (pending.size() > 0) - out.write("
Build in progress: " + pending.size() + " inbound
\n"); + out.write("
" + _("Build in progress") + ": " + pending.size() + " " + _("inbound") + "
\n"); live += pending.size(); } if (outPool != null) { List pending = outPool.listPending(); if (pending.size() > 0) - out.write("
Build in progress: " + pending.size() + " outbound
\n"); + out.write("
" + _("Build in progress") + ": " + pending.size() + " " + _("outbound") + "
\n"); live += pending.size(); } if (live <= 0) - out.write("
No tunnels; waiting for the grace period to end.
\n"); + out.write("
" + _("No tunnels; waiting for the grace period to end.") + "
\n"); out.write("
Lifetime bandwidth usage: " + DataHelper.formatSize(processedIn*1024) + "B in, " + DataHelper.formatSize(processedOut*1024) + "B out
"); } @@ -230,7 +230,7 @@ public class TunnelRenderer { List peerList = new ArrayList(peers); Collections.sort(peerList, new HashComparator()); - out.write("

Tunnel Counts By Peer:

\n"); + out.write("

" + _("Tunnel Counts By Peer") + ":

\n"); out.write("
" + _("In/Out") + "" + _("Expiry") + "" + _("Usage") + "" + _("Gateway") + "ParticipantsParticipant" + _("Participant") + "Endpoint" + _("Endpoint") + "
\n"); for (Hash h : peerList) { out.write("
PeerExpl. + Client% of totalPart. from + to% of total
"); @@ -249,7 +249,7 @@ public class TunnelRenderer { out.write('0'); out.write('\n'); } - out.write("
Tunnels " + tunnelCount); + out.write("
" + _("Tunnels") + " " + tunnelCount); out.write("   " + partCount); out.write("  
\n"); } diff --git a/apps/routerconsole/jsp/configadvanced.jsp b/apps/routerconsole/jsp/configadvanced.jsp index c4f72738e..2b506cd78 100644 --- a/apps/routerconsole/jsp/configadvanced.jsp +++ b/apps/routerconsole/jsp/configadvanced.jsp @@ -32,7 +32,7 @@

<%=intl._("Advanced I2P Configuration")%>



- -
+ " /> + " />
<%=intl._("NOTE")%>: <%=intl._("Some changes may require a restart to take effect.")%>
diff --git a/apps/routerconsole/jsp/configclients.jsp b/apps/routerconsole/jsp/configclients.jsp index b4fd6afd6..bff2fc590 100644 --- a/apps/routerconsole/jsp/configclients.jsp +++ b/apps/routerconsole/jsp/configclients.jsp @@ -38,7 +38,7 @@ button span.hide{ <%=net.i2p.router.startup.ClientAppConfig.configFile(net.i2p.I2PAppContext.getGlobalContext()).getAbsolutePath()%>. <%=intl._("All changes require restart to take effect.")%>


- + " />

<%=intl._("WebApp Configuration")%>

<%=intl._("The Java web applications listed below are started by the webConsole client and run in the same JVM as the router. They are usually web applications accessible through the router console. They may be complete applications (e.g. i2psnark),front-ends to another client or application which must be separately enabled (e.g. susidns, i2ptunnel), or have no web interface at all (e.g. addressbook).")%>

@@ -48,5 +48,5 @@ button span.hide{

<%=intl._("All changes require restart to take effect.")%>


- + " />
diff --git a/apps/routerconsole/jsp/configkeyring.jsp b/apps/routerconsole/jsp/configkeyring.jsp index ac06feafe..5a487edc3 100644 --- a/apps/routerconsole/jsp/configkeyring.jsp +++ b/apps/routerconsole/jsp/configkeyring.jsp @@ -42,6 +42,6 @@
<%=intl._("Encryption Key")%>:
- " /> + " /> " />

diff --git a/apps/routerconsole/jsp/configlogging.jsp b/apps/routerconsole/jsp/configlogging.jsp index 1c0c92951..39ac2b7f6 100644 --- a/apps/routerconsole/jsp/configlogging.jsp +++ b/apps/routerconsole/jsp/configlogging.jsp @@ -48,6 +48,6 @@

- - + " /> + " />
diff --git a/apps/routerconsole/jsp/configpeer.jsp b/apps/routerconsole/jsp/configpeer.jsp index 8d6297c02..24671ce51 100644 --- a/apps/routerconsole/jsp/configpeer.jsp +++ b/apps/routerconsole/jsp/configpeer.jsp @@ -41,8 +41,8 @@

<%=intl._("Manually Ban / Unban a Peer")%>

<%=intl._("Banning will prevent the participation of this peer in tunnels you create.")%>

- - + " /> + " /> <% if (! "".equals(peer)) { %> <% } %> @@ -59,7 +59,7 @@ <%=intl._("Capacity")%>: -

+ " />

diff --git a/apps/routerconsole/jsp/configservice.jsp b/apps/routerconsole/jsp/configservice.jsp index 91eac223a..117623ddf 100644 --- a/apps/routerconsole/jsp/configservice.jsp +++ b/apps/routerconsole/jsp/configservice.jsp @@ -26,9 +26,9 @@

<%=intl._("Graceful shutdown lets the router satisfy the agreements it has already made before shutting down, but may take a few minutes.")%> <%=intl._("If you need to kill the router immediately, that option is available as well.")%>


- - - + " /> + " /> + " />
<% if (System.getProperty("wrapper.version") != null) { %>

<%=intl._("If you want the router to restart itself after shutting down, you can choose one of the following.")%> @@ -37,8 +37,8 @@ <%=intl._("A graceful restart will take a few minutes (but your peers will appreciate your patience), while a hard restart does so immediately.")%> <%=intl._("After tearing down the router, it will wait 1 minute before starting back up again.")%>


- - + " /> + " /> <% } %>
<% if ( (System.getProperty("os.name") != null) && (System.getProperty("os.name").startsWith("Win")) ) { %> @@ -47,16 +47,16 @@ <%=intl._("(later on, I2P client applications will be able to integrate their own functionality into the system tray as well).")%> <%=intl._("If you are on windows, you can either enable or disable that icon here.")%>


- - + " /> + " />

<%=intl._("Run on startup")%>

<%=intl._("You can control whether I2P is run on startup or not by selecting one of the following options")%> - <%=intl._("I2P will install (or remove) a service accordingly.")%> <%=intl._("If you prefer the command line, you can also run the ")%> install_i2p_service_winnt.bat (<%=intl._("or")%> uninstall_i2p_service_winnt.bat).


- -
+ " /> +" />

<%=intl._("Note")%>: <%=intl._("If you are running I2P as service right now, removing it will shut down your router immediately.")%> <%=intl._("You may want to consider shutting down gracefully, as above, then running uninstall_i2p_service_winnt.bat.")%>

<% } %> @@ -74,6 +74,6 @@

<%=intl._("I2P's main configuration interface is this web console, so for your convenience I2P can launch a web browser on startup pointing at")%> http://127.0.0.1:7657/index.jsp .


- - + " /> + " />
diff --git a/apps/routerconsole/jsp/configui.jsp b/apps/routerconsole/jsp/configui.jsp index 8742ba844..6ca14cede 100644 --- a/apps/routerconsole/jsp/configui.jsp +++ b/apps/routerconsole/jsp/configui.jsp @@ -42,6 +42,6 @@ <%=uihelper._("Please contribute to the router console translation project! Contact the developers on IRC #i2p to help.")%>
- +" > " >
diff --git a/apps/routerconsole/locale/messages_de.po b/apps/routerconsole/locale/messages_de.po index b1c99002e..329868bad 100644 --- a/apps/routerconsole/locale/messages_de.po +++ b/apps/routerconsole/locale/messages_de.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: I2P routerconsole\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-10-25 17:07+0000\n" +"POT-Creation-Date: 2009-10-26 10:43+0000\n" "PO-Revision-Date: 2009-10-19 12:50+0000\n" "Last-Translator: foo \n" "Language-Team: foo \n" @@ -48,7 +48,7 @@ msgid "Share" msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:363 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:337 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:341 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:337 msgid "NOTE" msgstr "" @@ -80,6 +80,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:373 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:502 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:367 #: src/net/i2p/router/web/ConfigNetHandler.java:47 #: src/net/i2p/router/web/ConfigNetHandler.java:249 msgid "Save changes" @@ -87,6 +88,10 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:375 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:504 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:339 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:353 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:369 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:357 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:390 msgid "Cancel" msgstr "" @@ -146,7 +151,7 @@ msgid "Select Interface" msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:419 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:356 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:370 msgid "or" msgstr "" @@ -213,7 +218,7 @@ msgid "Specify Port" msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:497 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:358 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:376 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:363 msgid "Note" msgstr "" @@ -385,6 +390,7 @@ msgid "The router is currently testing whether your UDP port is firewalled." msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:573 +#: src/net/i2p/router/web/NetDbRenderer.java:237 msgid "Hidden" msgstr "" @@ -576,7 +582,12 @@ msgstr "" msgid "Advanced I2P Configuration" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:339 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:337 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:355 +msgid "Apply" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:343 msgid "Some changes may require a restart to take effect." msgstr "" @@ -603,15 +614,20 @@ msgid "To change other client options, edit the file" msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:353 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:363 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:365 msgid "All changes require restart to take effect." msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:355 -msgid "WebApp Configuration" +#: src/net/i2p/router/web/ConfigClientsHandler.java:32 +msgid "Save Client Configuration" msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:357 +msgid "WebApp Configuration" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:359 msgid "" "The Java web applications listed below are started by the webConsole client " "and run in the same JVM as the router. They are usually web applications " @@ -621,7 +637,7 @@ msgid "" "all (e.g. addressbook)." msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:359 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:361 msgid "" "A web app may also be disabled by removing the .war file from the webapps " "directory; however the .war file and web app will reappear when you update " @@ -629,6 +645,11 @@ msgid "" "preferred method." msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:367 +#: src/net/i2p/router/web/ConfigClientsHandler.java:34 +msgid "Save WebApp Configuration" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:106 msgid "config keyring" msgstr "" @@ -666,6 +687,16 @@ msgstr "" msgid "Encryption Key" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:349 +#: src/net/i2p/router/web/ConfigKeyringHandler.java:18 +msgid "Add key" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:351 +#: src/net/i2p/router/web/ConfigKeyringHandler.java:19 +msgid "Delete key" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:107 msgid "config logging" msgstr "" @@ -748,11 +779,22 @@ msgid "" "Banning will prevent the participation of this peer in tunnels you create." msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:352 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:348 +#: src/net/i2p/router/web/ConfigPeerHandler.java:20 +msgid "Ban peer until restart" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:350 +#: src/net/i2p/router/web/ConfigPeerHandler.java:28 +msgid "Unban peer" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:356 +#: src/net/i2p/router/web/ConfigPeerHandler.java:39 msgid "Adjust Profile Bonuses" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:354 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:358 msgid "" "Bonuses may be positive or negative, and affect the peer's inclusion in Fast " "and High Capacity tiers. Fast peers are used for client tunnels, and High " @@ -760,18 +802,22 @@ msgid "" "displayed on the" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:356 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:360 msgid "profiles page" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:364 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:368 msgid "Speed" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:368 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:372 msgid "Capacity" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:376 +msgid "Adjust peer bonuses" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:106 msgid "config service" msgstr "" @@ -795,99 +841,154 @@ msgid "" "If you need to kill the router immediately, that option is available as well." msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:324 +#: src/net/i2p/router/web/ConfigServiceHandler.java:53 +msgid "Shutdown gracefully" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:326 +#: src/net/i2p/router/web/ConfigServiceHandler.java:57 +msgid "Shutdown immediately" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:328 +#: src/net/i2p/router/web/ConfigServiceHandler.java:61 +msgid "Cancel graceful shutdown" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:332 msgid "" "If you want the router to restart itself after shutting down, you can choose " "one of the following." msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:328 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:334 msgid "This is useful in some situations" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:330 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:336 msgid "" "for example, if you changed some settings that client applications only read " "at startup, such as the routerconsole password or the interface it listens " "on." msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:332 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:338 msgid "" "A graceful restart will take a few minutes (but your peers will appreciate " "your patience), while a hard restart does so immediately." msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:334 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:340 msgid "" "After tearing down the router, it will wait 1 minute before starting back up " "again." msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:340 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:342 +#: src/net/i2p/router/web/ConfigServiceHandler.java:64 +msgid "Graceful restart" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:344 +#: src/net/i2p/router/web/ConfigServiceHandler.java:68 +msgid "Hard restart" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:350 msgid "Systray integration" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:342 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:352 msgid "" "On the windows platform, there is a small application to sit in the system " "tray, allowing you to view the router's status" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:344 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:354 msgid "" "(later on, I2P client applications will be able to integrate their own " "functionality into the system tray as well)." msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:346 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:356 msgid "If you are on windows, you can either enable or disable that icon here." msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:348 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:358 +#: src/net/i2p/router/web/ConfigServiceHandler.java:91 +msgid "Show systray icon" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:360 +#: src/net/i2p/router/web/ConfigServiceHandler.java:103 +msgid "Hide systray icon" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:362 msgid "Run on startup" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:350 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:364 msgid "" "You can control whether I2P is run on startup or not by selecting one of the " "following options" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:352 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:366 msgid "I2P will install (or remove) a service accordingly." msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:354 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:368 msgid "If you prefer the command line, you can also run the " msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:360 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:372 +#: src/net/i2p/router/web/ConfigServiceHandler.java:80 +msgid "Run I2P on startup" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:374 +#: src/net/i2p/router/web/ConfigServiceHandler.java:82 +msgid "Don't run I2P on startup" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:378 msgid "" "If you are running I2P as service right now, removing it will shut down your " "router immediately." msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:362 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:380 msgid "" "You may want to consider shutting down gracefully, as above, then running " "uninstall_i2p_service_winnt.bat." msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:370 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:388 msgid "Debugging" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:374 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:392 msgid "Launch browser on router startup?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:376 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:394 msgid "" "I2P's main configuration interface is this web console, so for your " "convenience I2P can launch a web browser on startup pointing at" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:396 +#: src/net/i2p/router/web/ConfigServiceHandler.java:115 +msgid "View console on startup" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:398 +#: src/net/i2p/router/web/ConfigServiceHandler.java:118 +msgid "Do not view console on startup" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:107 msgid "config stats" msgstr "" @@ -1184,15 +1285,48 @@ msgstr "" msgid "I2P Tunnel Summary" msgstr "" -#: src/net/i2p/router/web/ConfigClientsHelper.java:17 -msgid "Class and arguments" +#: src/net/i2p/router/web/ConfigClientsHandler.java:59 +#: src/net/i2p/router/web/ConfigKeyringHandler.java:49 +msgid "Unsupported" msgstr "" +#: src/net/i2p/router/web/ConfigClientsHandler.java:74 +msgid "" +"Client configuration saved successfully - restart required to take effect." +msgstr "" + +#: src/net/i2p/router/web/ConfigClientsHandler.java:80 +msgid "Bad client index." +msgstr "" + +#: src/net/i2p/router/web/ConfigClientsHandler.java:85 #: src/net/i2p/router/web/ConfigClientsHelper.java:17 #: src/net/i2p/router/web/SummaryBarRenderer.java:359 msgid "Client" msgstr "" +#: src/net/i2p/router/web/ConfigClientsHandler.java:85 +#: src/net/i2p/router/web/ConfigClientsHandler.java:120 +msgid "started" +msgstr "" + +#: src/net/i2p/router/web/ConfigClientsHandler.java:102 +msgid "" +"WebApp configuration saved successfully - restart required to take effect." +msgstr "" + +#: src/net/i2p/router/web/ConfigClientsHandler.java:122 +msgid "Failed to start" +msgstr "" + +#: src/net/i2p/router/web/ConfigClientsHandler.java:128 +msgid "Failed to find server." +msgstr "" + +#: src/net/i2p/router/web/ConfigClientsHelper.java:17 +msgid "Class and arguments" +msgstr "" + #: src/net/i2p/router/web/ConfigClientsHelper.java:17 #: src/net/i2p/router/web/ConfigClientsHelper.java:33 msgid "Run at Startup?" @@ -1215,6 +1349,22 @@ msgstr "" msgid "Start" msgstr "" +#: src/net/i2p/router/web/ConfigKeyringHandler.java:21 +msgid "You must enter a destination" +msgstr "" + +#: src/net/i2p/router/web/ConfigKeyringHandler.java:23 +msgid "You must enter a key" +msgstr "" + +#: src/net/i2p/router/web/ConfigKeyringHandler.java:36 +msgid "Invalid destination or key" +msgstr "" + +#: src/net/i2p/router/web/ConfigKeyringHandler.java:45 +msgid "Invalid destination" +msgstr "" + #: src/net/i2p/router/web/ConfigNetHandler.java:119 msgid "Rechecking router reachability..." msgstr "" @@ -1293,42 +1443,54 @@ msgstr "" msgid "Updated bandwidth limits" msgstr "" -#: src/net/i2p/router/web/ConfigServiceHandler.java:53 -msgid "Shutdown gracefully" +#: src/net/i2p/router/web/ConfigPeerHandler.java:24 +#: src/net/i2p/router/web/ConfigPeerHandler.java:33 +#: src/net/i2p/router/web/ConfigPeerHandler.java:35 +msgid "Peer" +msgstr "" + +#: src/net/i2p/router/web/ConfigPeerHandler.java:24 +msgid "banned until restart" +msgstr "" + +#: src/net/i2p/router/web/ConfigPeerHandler.java:27 +#: src/net/i2p/router/web/ConfigPeerHandler.java:38 +#: src/net/i2p/router/web/ConfigPeerHandler.java:59 +msgid "Invalid peer" +msgstr "" + +#: src/net/i2p/router/web/ConfigPeerHandler.java:33 +msgid "unbanned" +msgstr "" + +#: src/net/i2p/router/web/ConfigPeerHandler.java:35 +msgid "is not currently banned" +msgstr "" + +#: src/net/i2p/router/web/ConfigPeerHandler.java:47 +msgid "Bad speed value" +msgstr "" + +#: src/net/i2p/router/web/ConfigPeerHandler.java:52 +msgid "Bad capacity value" msgstr "" #: src/net/i2p/router/web/ConfigServiceHandler.java:56 msgid "Graceful shutdown initiated" msgstr "" -#: src/net/i2p/router/web/ConfigServiceHandler.java:57 -msgid "Shutdown immediately" -msgstr "" - #: src/net/i2p/router/web/ConfigServiceHandler.java:60 msgid "Shutdown immediately! boom bye bye bad bwoy" msgstr "" -#: src/net/i2p/router/web/ConfigServiceHandler.java:61 -msgid "Cancel graceful shutdown" -msgstr "" - #: src/net/i2p/router/web/ConfigServiceHandler.java:63 msgid "Graceful shutdown cancelled" msgstr "" -#: src/net/i2p/router/web/ConfigServiceHandler.java:64 -msgid "Graceful restart" -msgstr "" - #: src/net/i2p/router/web/ConfigServiceHandler.java:67 msgid "Graceful restart requested" msgstr "" -#: src/net/i2p/router/web/ConfigServiceHandler.java:68 -msgid "Hard restart" -msgstr "" - #: src/net/i2p/router/web/ConfigServiceHandler.java:71 msgid "Hard restart requested" msgstr "" @@ -1349,18 +1511,6 @@ msgstr "" msgid "Rekeying after graceful shutdown" msgstr "" -#: src/net/i2p/router/web/ConfigServiceHandler.java:80 -msgid "Run I2P on startup" -msgstr "" - -#: src/net/i2p/router/web/ConfigServiceHandler.java:82 -msgid "Don't run I2P on startup" -msgstr "" - -#: src/net/i2p/router/web/ConfigServiceHandler.java:91 -msgid "Show systray icon" -msgstr "" - #: src/net/i2p/router/web/ConfigServiceHandler.java:96 msgid "System tray icon enabled." msgstr "" @@ -1375,26 +1525,14 @@ msgstr "" msgid "Warning: unable to contact the systray manager" msgstr "" -#: src/net/i2p/router/web/ConfigServiceHandler.java:103 -msgid "Hide systray icon" -msgstr "" - #: src/net/i2p/router/web/ConfigServiceHandler.java:108 msgid "System tray icon disabled." msgstr "" -#: src/net/i2p/router/web/ConfigServiceHandler.java:115 -msgid "View console on startup" -msgstr "" - #: src/net/i2p/router/web/ConfigServiceHandler.java:117 msgid "Console is to be shown on startup" msgstr "" -#: src/net/i2p/router/web/ConfigServiceHandler.java:118 -msgid "Do not view console on startup" -msgstr "" - #: src/net/i2p/router/web/ConfigServiceHandler.java:120 msgid "Console is not to be shown on startup" msgstr "" @@ -1415,6 +1553,102 @@ msgstr "" msgid "Warning: unable to remove the service" msgstr "" +#: src/net/i2p/router/web/ConfigTunnelsHandler.java:140 +msgid "Exploratory tunnel configuration saved successfully." +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHandler.java:142 +msgid "" +"Error saving the configuration (applied but not saved) - please see the " +"error logs." +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:21 +#: src/net/i2p/router/web/TunnelRenderer.java:40 +msgid "Exploratory tunnels" +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:41 +#: src/net/i2p/router/web/TunnelRenderer.java:59 +msgid "Client tunnels for" +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:64 +msgid "ANONYMITY WARNING - Settings include 0-hop tunnels." +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:69 +msgid "ANONYMITY WARNING - Settings include 1-hop tunnels." +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:72 +msgid "PERFORMANCE WARNING - Settings include very long tunnels." +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:75 +msgid "PERFORMANCE WARNING - Settings include high tunnel quantities." +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:77 +msgid "Inbound" +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:77 +msgid "Outbound" +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:82 +msgid "Depth" +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:85 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:87 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:92 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:94 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:102 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:103 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:104 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:106 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:108 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:113 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:114 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:115 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:117 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:119 +msgid "hop" +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:99 +msgid "Randomization" +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:123 +msgid "Quantity" +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:126 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:128 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:133 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:135 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:143 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:145 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:150 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:152 +msgid "tunnel" +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:140 +msgid "Backup quantity" +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:162 +msgid "Inbound options" +msgstr "" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:175 +msgid "Outbound options" +msgstr "" + #: src/net/i2p/router/web/ConfigUIHelper.java:6 msgid "classic" msgstr "" @@ -1518,6 +1752,115 @@ msgstr "" msgid "Download, verify, and restart" msgstr "" +#: src/net/i2p/router/web/NetDbRenderer.java:58 +msgid "Network Database RouterInfo Lookup" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:73 +msgid "Router" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:73 +msgid "not found in network database" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:85 +#: src/net/i2p/router/web/NetDbRenderer.java:138 +msgid "Network Database Contents" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:86 +#: src/net/i2p/router/web/NetDbRenderer.java:138 +msgid "View" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:97 +msgid "Local" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:99 +msgid "Unpublished" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:100 +#: src/net/i2p/router/web/NetDbRenderer.java:107 +msgid "Destination" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:121 +#: src/net/i2p/router/web/TunnelRenderer.java:155 +msgid "Gateway" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:123 +msgid "Tunnel" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:140 +msgid "Not initialized" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:147 +msgid "Routers" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:149 +msgid "view without" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:151 +msgid "view with" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:152 +msgid "stats" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:186 +#: src/net/i2p/router/web/NetDbRenderer.java:202 +msgid "Count" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:186 +#: src/net/i2p/router/web/SummaryBarRenderer.java:150 +msgid "Version" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:202 +msgid "Country" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:225 +msgid "Our info" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:227 +msgid "Peer info for" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:237 +msgid "Updated" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:237 +#: src/net/i2p/router/web/NetDbRenderer.java:239 +msgid "ago" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:239 +#: src/net/i2p/router/web/NetDbRenderer.java:241 +msgid "Published" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:242 +msgid "Address(es)" +msgstr "" + +#: src/net/i2p/router/web/NetDbRenderer.java:259 +#: src/net/i2p/router/web/SummaryBarRenderer.java:124 +msgid "Stats" +msgstr "" + #: src/net/i2p/router/web/SummaryBarRenderer.java:42 msgid "I2P Services" msgstr "" @@ -1568,6 +1911,7 @@ msgid "View existing tunnels and tunnel build status" msgstr "" #: src/net/i2p/router/web/SummaryBarRenderer.java:82 +#: src/net/i2p/router/web/TunnelRenderer.java:252 msgid "Tunnels" msgstr "" @@ -1625,10 +1969,6 @@ msgstr "" msgid "Textual router performance statistics" msgstr "" -#: src/net/i2p/router/web/SummaryBarRenderer.java:124 -msgid "Stats" -msgstr "" - #: src/net/i2p/router/web/SummaryBarRenderer.java:134 msgid "I2P Router Help" msgstr "" @@ -1649,10 +1989,6 @@ msgstr "" msgid "Local Identity" msgstr "" -#: src/net/i2p/router/web/SummaryBarRenderer.java:150 -msgid "Version" -msgstr "" - #: src/net/i2p/router/web/SummaryBarRenderer.java:157 msgid "How long we've been running for this session" msgstr "" @@ -1758,3 +2094,103 @@ msgstr "" #: src/net/i2p/router/web/SummaryBarRenderer.java:398 msgid "Backlog" msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:40 +#: src/net/i2p/router/web/TunnelRenderer.java:61 +msgid "config" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:69 +msgid "Participating tunnels" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:70 +msgid "From" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:70 +msgid "Receive on" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:71 +msgid "Expiration" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:71 +msgid "Send on" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:71 +msgid "To" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:72 +msgid "Rate" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:72 +msgid "Role" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:72 +#: src/net/i2p/router/web/TunnelRenderer.java:155 +msgid "Usage" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:116 +msgid "Outbound Endpoint" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:118 +msgid "Inbound Gateway" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:120 +#: src/net/i2p/router/web/TunnelRenderer.java:161 +msgid "Participant" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:125 +msgid "Inactive participating tunnels" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:126 +msgid "Lifetime bandwidth usage" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:155 +msgid "Expiry" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:155 +msgid "In/Out" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:158 +msgid "Participants" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:164 +msgid "Endpoint" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:204 +#: src/net/i2p/router/web/TunnelRenderer.java:210 +msgid "Build in progress" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:204 +msgid "inbound" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:210 +msgid "outbound" +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:214 +msgid "No tunnels; waiting for the grace period to end." +msgstr "" + +#: src/net/i2p/router/web/TunnelRenderer.java:233 +msgid "Tunnel Counts By Peer" +msgstr "" diff --git a/apps/routerconsole/locale/messages_zh.po b/apps/routerconsole/locale/messages_zh.po index 280573f2e..d02922202 100644 --- a/apps/routerconsole/locale/messages_zh.po +++ b/apps/routerconsole/locale/messages_zh.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: I2P routerconsole\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-10-25 17:07+0000\n" +"POT-Creation-Date: 2009-10-26 10:43+0000\n" "PO-Revision-Date: \n" "Last-Translator: walking \n" "Language-Team: \n" @@ -47,7 +47,7 @@ msgid "Share" msgstr "共享" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:363 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:337 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:341 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:337 msgid "NOTE" msgstr "注意" @@ -74,6 +74,7 @@ msgstr "共享的带宽越多,您的匿名性越强同时能帮助网络成长 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:373 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:502 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:367 #: src/net/i2p/router/web/ConfigNetHandler.java:47 #: src/net/i2p/router/web/ConfigNetHandler.java:249 msgid "Save changes" @@ -81,6 +82,10 @@ msgstr "保存修改" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:375 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:504 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:339 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:353 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:369 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:357 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:390 msgid "Cancel" msgstr "取消" @@ -140,7 +145,7 @@ msgid "Select Interface" msgstr "选择网络接口" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:419 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:356 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:370 msgid "or" msgstr "或" @@ -206,7 +211,7 @@ msgid "Specify Port" msgstr "指定端口" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:497 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:358 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:376 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:363 msgid "Note" msgstr "注意" @@ -346,6 +351,7 @@ msgid "The router is currently testing whether your UDP port is firewalled." msgstr "路由器正在测试您的UDP端口是否被防火墙阻挡。" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:573 +#: src/net/i2p/router/web/NetDbRenderer.java:237 msgid "Hidden" msgstr "隐藏(Hidden)" @@ -513,7 +519,12 @@ msgstr "I2P 高级设置" msgid "Advanced I2P Configuration" msgstr "I2P 高级设置" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:339 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:337 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:355 +msgid "Apply" +msgstr "应用" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:343 msgid "Some changes may require a restart to take effect." msgstr "某些设置需要程序重启后生效。" @@ -538,22 +549,32 @@ msgid "To change other client options, edit the file" msgstr "修改其他客户端设置请编辑文件" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:353 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:363 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:365 msgid "All changes require restart to take effect." msgstr "所有更改均需要程序重启才能生效。" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:355 +#: src/net/i2p/router/web/ConfigClientsHandler.java:32 +msgid "Save Client Configuration" +msgstr "保存客户程序设置" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:357 msgid "WebApp Configuration" msgstr "WebApp 设置" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:357 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:359 msgid "The Java web applications listed below are started by the webConsole client and run in the same JVM as the router. They are usually web applications accessible through the router console. They may be complete applications (e.g. i2psnark),front-ends to another client or application which must be separately enabled (e.g. susidns, i2ptunnel), or have no web interface at all (e.g. addressbook)." msgstr "下面列出的Java Web 程序随客户端“web控制台”一同启动,并与路由运行于同一JVM中。这些Web程序通常可以通过路由器界面直接访问。他们可能是完整的程序 (例如 i2psnark/BT客户端),其他客户端程序的前端或必须单独启动的程序(例如. susidns, i2ptunnel),甚至根本没有Web界面(例如 addressbook)。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:359 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:361 msgid "A web app may also be disabled by removing the .war file from the webapps directory; however the .war file and web app will reappear when you update your router to a newer version, so disabling the web app here is the preferred method." msgstr "从webapps目录中删除相应的.war文件同样可以禁用Web程序;然而这些 .war 文件和Web程序在更新I2P后还会再次出现,所以推荐在这里通过设置的方法禁用不用的Web程序。" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:367 +#: src/net/i2p/router/web/ConfigClientsHandler.java:34 +msgid "Save WebApp Configuration" +msgstr "保存 WebApp 设置" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:106 msgid "config keyring" msgstr "钥匙环设置" @@ -590,6 +611,16 @@ msgstr "目标(Dest.)名称, HASH, 或完整公钥" msgid "Encryption Key" msgstr "加密密钥" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:349 +#: src/net/i2p/router/web/ConfigKeyringHandler.java:18 +msgid "Add key" +msgstr "添加密钥" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:351 +#: src/net/i2p/router/web/ConfigKeyringHandler.java:19 +msgid "Delete key" +msgstr "删除密钥" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:107 msgid "config logging" msgstr "日志设置" @@ -666,26 +697,41 @@ msgstr "手动封锁/解封某个节点" msgid "Banning will prevent the participation of this peer in tunnels you create." msgstr "封锁将阻止节点参与您的隧道创建" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:352 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:348 +#: src/net/i2p/router/web/ConfigPeerHandler.java:20 +msgid "Ban peer until restart" +msgstr "封锁节点直到重启" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:350 +#: src/net/i2p/router/web/ConfigPeerHandler.java:28 +msgid "Unban peer" +msgstr "节点解封" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:356 +#: src/net/i2p/router/web/ConfigPeerHandler.java:39 msgid "Adjust Profile Bonuses" msgstr "调整节点评分" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:354 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:358 msgid "Bonuses may be positive or negative, and affect the peer's inclusion in Fast and High Capacity tiers. Fast peers are used for client tunnels, and High Capacity peers are used for some exploratory tunnels. Current bonuses are displayed on the" msgstr "评分(Bonuse)可能为正或为负并影响节点是否评为快速和高容量节点。快速节点用于客户程序通道,高容量节点用于探索隧道。当前评分显示于" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:356 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:360 msgid "profiles page" msgstr "节点信息页面" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:364 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:368 msgid "Speed" msgstr "速度" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:368 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:372 msgid "Capacity" msgstr "容量" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:376 +msgid "Adjust peer bonuses" +msgstr "调整节点评分" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:106 msgid "config service" msgstr "服务设置" @@ -706,78 +752,133 @@ msgstr "平滑关闭(Graceful Shutdown)让路由器在关闭前完成已达成 msgid "If you need to kill the router immediately, that option is available as well." msgstr "当然你也可以选择立即关闭路由。" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:324 +#: src/net/i2p/router/web/ConfigServiceHandler.java:53 +msgid "Shutdown gracefully" +msgstr "平滑关闭" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:326 +#: src/net/i2p/router/web/ConfigServiceHandler.java:57 +msgid "Shutdown immediately" +msgstr "立刻关闭" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:328 +#: src/net/i2p/router/web/ConfigServiceHandler.java:61 +msgid "Cancel graceful shutdown" +msgstr "取消平滑关闭" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:332 msgid "If you want the router to restart itself after shutting down, you can choose one of the following." msgstr "如果你想要路由器关闭后自动重新启动,可以选择下面的选项。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:328 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:334 msgid "This is useful in some situations" msgstr "重启在某些情况下有用" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:330 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:336 msgid "for example, if you changed some settings that client applications only read at startup, such as the routerconsole password or the interface it listens on." msgstr "例如当修改了客户程序仅在启动时读取的设置,比如路由器控制界面的密码,监听的接口。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:332 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:338 msgid "A graceful restart will take a few minutes (but your peers will appreciate your patience), while a hard restart does so immediately." msgstr "平滑重启可能会等待几分钟的时间(但你的节点一定会感激你的耐心),硬重启可以立即完成。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:334 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:340 msgid "After tearing down the router, it will wait 1 minute before starting back up again." msgstr "路由关闭后将等待1分钟再重新启动。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:340 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:342 +#: src/net/i2p/router/web/ConfigServiceHandler.java:64 +msgid "Graceful restart" +msgstr "平滑重启" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:344 +#: src/net/i2p/router/web/ConfigServiceHandler.java:68 +msgid "Hard restart" +msgstr "硬重启" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:350 msgid "Systray integration" msgstr "使用系统托盘" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:342 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:352 msgid "On the windows platform, there is a small application to sit in the system tray, allowing you to view the router's status" msgstr "Windows 平台允许小程序进驻系统托盘,让你可以查看路由状态" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:344 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:354 msgid "(later on, I2P client applications will be able to integrate their own functionality into the system tray as well)." msgstr "(以后的 I2P 客户端程序也会将它们的功能集成到系统托盘里)。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:346 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:356 msgid "If you are on windows, you can either enable or disable that icon here." msgstr "如果你使用Windows, 可以在这里开启或关闭这个托盘图标。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:348 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:358 +#: src/net/i2p/router/web/ConfigServiceHandler.java:91 +msgid "Show systray icon" +msgstr "显示托盘图标" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:360 +#: src/net/i2p/router/web/ConfigServiceHandler.java:103 +msgid "Hide systray icon" +msgstr "隐藏系统图标" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:362 msgid "Run on startup" msgstr "系统启动时运行" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:350 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:364 msgid "You can control whether I2P is run on startup or not by selecting one of the following options" msgstr "这里你可以通过下面的选项来设置开机后 I2P 是否启动" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:352 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:366 msgid "I2P will install (or remove) a service accordingly." msgstr "I2P将相应的将自身安装为服务(或卸载服务)。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:354 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:368 msgid "If you prefer the command line, you can also run the " msgstr "如果你偏好使用命令行,可以运行" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:360 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:372 +#: src/net/i2p/router/web/ConfigServiceHandler.java:80 +msgid "Run I2P on startup" +msgstr "系统启动时运行I2P" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:374 +#: src/net/i2p/router/web/ConfigServiceHandler.java:82 +msgid "Don't run I2P on startup" +msgstr "系统启动时不运行I2P" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:378 msgid "If you are running I2P as service right now, removing it will shut down your router immediately." msgstr "如果您目前已经以服务形式运行 I2P ,删除 I2P 服务将立刻关闭路由器。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:362 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:380 msgid "You may want to consider shutting down gracefully, as above, then running uninstall_i2p_service_winnt.bat." msgstr "您可以考虑先平滑关闭路由,待退出后运行 uninstall_i2p_service_winnt.bat。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:370 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:388 msgid "Debugging" msgstr "调试" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:374 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:392 msgid "Launch browser on router startup?" msgstr "路由器启动时运行浏览器?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:376 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:394 msgid "I2P's main configuration interface is this web console, so for your convenience I2P can launch a web browser on startup pointing at" msgstr "此Web控制台是I2P的主要设置界面,所以如果您您觉得有必要I2P可以在路由启动时调用浏览器打开" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:396 +#: src/net/i2p/router/web/ConfigServiceHandler.java:115 +msgid "View console on startup" +msgstr "程序启动时显示控制台" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:398 +#: src/net/i2p/router/web/ConfigServiceHandler.java:118 +msgid "Do not view console on startup" +msgstr "启动后不打开控制台" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:107 msgid "config stats" msgstr "统计设置" @@ -1063,15 +1164,46 @@ msgstr "隧道概况" msgid "I2P Tunnel Summary" msgstr "I2P 隧道概况" -#: src/net/i2p/router/web/ConfigClientsHelper.java:17 -msgid "Class and arguments" -msgstr "类与" +#: src/net/i2p/router/web/ConfigClientsHandler.java:59 +#: src/net/i2p/router/web/ConfigKeyringHandler.java:49 +msgid "Unsupported" +msgstr "未支持的" +#: src/net/i2p/router/web/ConfigClientsHandler.java:74 +msgid "Client configuration saved successfully - restart required to take effect." +msgstr "客户程序设置保存成功 - 程序重启后生效" + +#: src/net/i2p/router/web/ConfigClientsHandler.java:80 +msgid "Bad client index." +msgstr "客户程序索引无效" + +#: src/net/i2p/router/web/ConfigClientsHandler.java:85 #: src/net/i2p/router/web/ConfigClientsHelper.java:17 #: src/net/i2p/router/web/SummaryBarRenderer.java:359 msgid "Client" msgstr "客户" +#: src/net/i2p/router/web/ConfigClientsHandler.java:85 +#: src/net/i2p/router/web/ConfigClientsHandler.java:120 +msgid "started" +msgstr "已启动" + +#: src/net/i2p/router/web/ConfigClientsHandler.java:102 +msgid "WebApp configuration saved successfully - restart required to take effect." +msgstr "WebApp设置保存成功 - 程序重启后生效" + +#: src/net/i2p/router/web/ConfigClientsHandler.java:122 +msgid "Failed to start" +msgstr "启动失败" + +#: src/net/i2p/router/web/ConfigClientsHandler.java:128 +msgid "Failed to find server." +msgstr "服务器或服务程序查找失败。" + +#: src/net/i2p/router/web/ConfigClientsHelper.java:17 +msgid "Class and arguments" +msgstr "类与参数" + #: src/net/i2p/router/web/ConfigClientsHelper.java:17 #: src/net/i2p/router/web/ConfigClientsHelper.java:33 msgid "Run at Startup?" @@ -1094,6 +1226,22 @@ msgstr "Web程序(WebApp)" msgid "Start" msgstr "启动" +#: src/net/i2p/router/web/ConfigKeyringHandler.java:21 +msgid "You must enter a destination" +msgstr "您必须输入一个目标" + +#: src/net/i2p/router/web/ConfigKeyringHandler.java:23 +msgid "You must enter a key" +msgstr "您必须输入一个密钥" + +#: src/net/i2p/router/web/ConfigKeyringHandler.java:36 +msgid "Invalid destination or key" +msgstr "目标或密钥无效" + +#: src/net/i2p/router/web/ConfigKeyringHandler.java:45 +msgid "Invalid destination" +msgstr "目标无效" + #: src/net/i2p/router/web/ConfigNetHandler.java:119 msgid "Rechecking router reachability..." msgstr "正在重检查路由连通性..." @@ -1170,42 +1318,54 @@ msgstr "正在更新共享带宽比例" msgid "Updated bandwidth limits" msgstr "带宽限制更新完毕" -#: src/net/i2p/router/web/ConfigServiceHandler.java:53 -msgid "Shutdown gracefully" -msgstr "平滑关闭" +#: src/net/i2p/router/web/ConfigPeerHandler.java:24 +#: src/net/i2p/router/web/ConfigPeerHandler.java:33 +#: src/net/i2p/router/web/ConfigPeerHandler.java:35 +msgid "Peer" +msgstr "节点" + +#: src/net/i2p/router/web/ConfigPeerHandler.java:24 +msgid "banned until restart" +msgstr "已封锁直到重启" + +#: src/net/i2p/router/web/ConfigPeerHandler.java:27 +#: src/net/i2p/router/web/ConfigPeerHandler.java:38 +#: src/net/i2p/router/web/ConfigPeerHandler.java:59 +msgid "Invalid peer" +msgstr "无效节点" + +#: src/net/i2p/router/web/ConfigPeerHandler.java:33 +msgid "unbanned" +msgstr "已解封" + +#: src/net/i2p/router/web/ConfigPeerHandler.java:35 +msgid "is not currently banned" +msgstr "目前未封锁" + +#: src/net/i2p/router/web/ConfigPeerHandler.java:47 +msgid "Bad speed value" +msgstr "速度值无效" + +#: src/net/i2p/router/web/ConfigPeerHandler.java:52 +msgid "Bad capacity value" +msgstr "容量值无效" #: src/net/i2p/router/web/ConfigServiceHandler.java:56 msgid "Graceful shutdown initiated" msgstr "开始平滑关闭" -#: src/net/i2p/router/web/ConfigServiceHandler.java:57 -msgid "Shutdown immediately" -msgstr "立刻关闭" - #: src/net/i2p/router/web/ConfigServiceHandler.java:60 msgid "Shutdown immediately! boom bye bye bad bwoy" msgstr "立即关闭!不推荐" -#: src/net/i2p/router/web/ConfigServiceHandler.java:61 -msgid "Cancel graceful shutdown" -msgstr "取消平滑关闭" - #: src/net/i2p/router/web/ConfigServiceHandler.java:63 msgid "Graceful shutdown cancelled" msgstr "平滑关闭已取消" -#: src/net/i2p/router/web/ConfigServiceHandler.java:64 -msgid "Graceful restart" -msgstr "平滑重启" - #: src/net/i2p/router/web/ConfigServiceHandler.java:67 msgid "Graceful restart requested" msgstr "平滑重启已请求" -#: src/net/i2p/router/web/ConfigServiceHandler.java:68 -msgid "Hard restart" -msgstr "硬重启" - #: src/net/i2p/router/web/ConfigServiceHandler.java:71 msgid "Hard restart requested" msgstr "硬重启已请求" @@ -1226,18 +1386,6 @@ msgstr "更换密钥并关闭" msgid "Rekeying after graceful shutdown" msgstr "平滑关闭后更换密钥" -#: src/net/i2p/router/web/ConfigServiceHandler.java:80 -msgid "Run I2P on startup" -msgstr "系统启动时运行I2P" - -#: src/net/i2p/router/web/ConfigServiceHandler.java:82 -msgid "Don't run I2P on startup" -msgstr "系统启动时不运行I2P" - -#: src/net/i2p/router/web/ConfigServiceHandler.java:91 -msgid "Show systray icon" -msgstr "显示托盘图标" - #: src/net/i2p/router/web/ConfigServiceHandler.java:96 msgid "System tray icon enabled." msgstr "系统托盘图标已启用" @@ -1252,26 +1400,14 @@ msgstr "您的平台不支持系统托盘图标功能" msgid "Warning: unable to contact the systray manager" msgstr "警告:与托盘管理器通讯失败" -#: src/net/i2p/router/web/ConfigServiceHandler.java:103 -msgid "Hide systray icon" -msgstr "隐藏系统图标" - #: src/net/i2p/router/web/ConfigServiceHandler.java:108 msgid "System tray icon disabled." msgstr "系统托盘已禁用" -#: src/net/i2p/router/web/ConfigServiceHandler.java:115 -msgid "View console on startup" -msgstr "程序启动时显示控制台" - #: src/net/i2p/router/web/ConfigServiceHandler.java:117 msgid "Console is to be shown on startup" msgstr "启动后显示控制台" -#: src/net/i2p/router/web/ConfigServiceHandler.java:118 -msgid "Do not view console on startup" -msgstr "启动后不打开控制台" - #: src/net/i2p/router/web/ConfigServiceHandler.java:120 msgid "Console is not to be shown on startup" msgstr "启动后不显示控制台" @@ -1292,6 +1428,100 @@ msgstr "服务已卸载" msgid "Warning: unable to remove the service" msgstr "警告:无法卸载服务" +#: src/net/i2p/router/web/ConfigTunnelsHandler.java:140 +msgid "Exploratory tunnel configuration saved successfully." +msgstr "探索隧道设置保存成功。" + +#: src/net/i2p/router/web/ConfigTunnelsHandler.java:142 +msgid "Error saving the configuration (applied but not saved) - please see the error logs." +msgstr "配置保存出错(已应用但未保存) - 参见错误日志" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:21 +#: src/net/i2p/router/web/TunnelRenderer.java:40 +msgid "Exploratory tunnels" +msgstr "探测隧道" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:41 +#: src/net/i2p/router/web/TunnelRenderer.java:59 +msgid "Client tunnels for" +msgstr "客户隧道 - " + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:64 +msgid "ANONYMITY WARNING - Settings include 0-hop tunnels." +msgstr "匿名性警告 - 设置中包括 0-跳点 隧道" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:69 +msgid "ANONYMITY WARNING - Settings include 1-hop tunnels." +msgstr "匿名性警告 - 设置中包括 1-跳点 隧道" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:72 +msgid "PERFORMANCE WARNING - Settings include very long tunnels." +msgstr "性能警告 - 设置中包括长隧道" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:75 +msgid "PERFORMANCE WARNING - Settings include high tunnel quantities." +msgstr "性能警告 - 设置中包括高质量隧道" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:77 +msgid "Inbound" +msgstr "入站" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:77 +msgid "Outbound" +msgstr "出站" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:82 +msgid "Depth" +msgstr "深度" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:85 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:87 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:92 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:94 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:102 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:103 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:104 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:106 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:108 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:113 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:114 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:115 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:117 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:119 +msgid "hop" +msgstr "跳点" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:99 +msgid "Randomization" +msgstr "随机" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:123 +msgid "Quantity" +msgstr "质量" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:126 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:128 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:133 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:135 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:143 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:145 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:150 +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:152 +msgid "tunnel" +msgstr "隧道" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:140 +msgid "Backup quantity" +msgstr "备用质量" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:162 +msgid "Inbound options" +msgstr "入站选项" + +#: src/net/i2p/router/web/ConfigTunnelsHelper.java:175 +msgid "Outbound options" +msgstr "出站选项" + #: src/net/i2p/router/web/ConfigUIHelper.java:6 msgid "classic" msgstr "经典" @@ -1338,7 +1568,7 @@ msgstr "有更新可用,点左侧按钮下载" #: src/net/i2p/router/web/ConfigUpdateHandler.java:65 msgid "No update available" -msgstr "无可用更新" +msgstr "无更新" #: src/net/i2p/router/web/ConfigUpdateHandler.java:72 msgid "Updating news URL to" @@ -1395,6 +1625,115 @@ msgstr "仅下载并验证" msgid "Download, verify, and restart" msgstr "仅下载、验证并重启" +#: src/net/i2p/router/web/NetDbRenderer.java:58 +msgid "Network Database RouterInfo Lookup" +msgstr "网络数据库 RouterInfo 检索" + +#: src/net/i2p/router/web/NetDbRenderer.java:73 +msgid "Router" +msgstr "路由器" + +#: src/net/i2p/router/web/NetDbRenderer.java:73 +msgid "not found in network database" +msgstr "在网络数据库概况未找到" + +#: src/net/i2p/router/web/NetDbRenderer.java:85 +#: src/net/i2p/router/web/NetDbRenderer.java:138 +msgid "Network Database Contents" +msgstr "网络数据库内容" + +#: src/net/i2p/router/web/NetDbRenderer.java:86 +#: src/net/i2p/router/web/NetDbRenderer.java:138 +msgid "View" +msgstr "查看" + +#: src/net/i2p/router/web/NetDbRenderer.java:97 +msgid "Local" +msgstr "本地" + +#: src/net/i2p/router/web/NetDbRenderer.java:99 +msgid "Unpublished" +msgstr "未发布" + +#: src/net/i2p/router/web/NetDbRenderer.java:100 +#: src/net/i2p/router/web/NetDbRenderer.java:107 +msgid "Destination" +msgstr "目标" + +#: src/net/i2p/router/web/NetDbRenderer.java:121 +#: src/net/i2p/router/web/TunnelRenderer.java:155 +msgid "Gateway" +msgstr "网关" + +#: src/net/i2p/router/web/NetDbRenderer.java:123 +msgid "Tunnel" +msgstr "隧道" + +#: src/net/i2p/router/web/NetDbRenderer.java:140 +msgid "Not initialized" +msgstr "未初始化" + +#: src/net/i2p/router/web/NetDbRenderer.java:147 +msgid "Routers" +msgstr "路由器" + +#: src/net/i2p/router/web/NetDbRenderer.java:149 +msgid "view without" +msgstr "查看不带" + +#: src/net/i2p/router/web/NetDbRenderer.java:151 +msgid "view with" +msgstr "查看带" + +#: src/net/i2p/router/web/NetDbRenderer.java:152 +msgid "stats" +msgstr "统计" + +#: src/net/i2p/router/web/NetDbRenderer.java:186 +#: src/net/i2p/router/web/NetDbRenderer.java:202 +msgid "Count" +msgstr "计数" + +#: src/net/i2p/router/web/NetDbRenderer.java:186 +#: src/net/i2p/router/web/SummaryBarRenderer.java:150 +msgid "Version" +msgstr "版本" + +#: src/net/i2p/router/web/NetDbRenderer.java:202 +msgid "Country" +msgstr "国家" + +#: src/net/i2p/router/web/NetDbRenderer.java:225 +msgid "Our info" +msgstr "我方信息" + +#: src/net/i2p/router/web/NetDbRenderer.java:227 +msgid "Peer info for" +msgstr "节点信息" + +#: src/net/i2p/router/web/NetDbRenderer.java:237 +msgid "Updated" +msgstr "已更新" + +#: src/net/i2p/router/web/NetDbRenderer.java:237 +#: src/net/i2p/router/web/NetDbRenderer.java:239 +msgid "ago" +msgstr "前" + +#: src/net/i2p/router/web/NetDbRenderer.java:239 +#: src/net/i2p/router/web/NetDbRenderer.java:241 +msgid "Published" +msgstr "发布" + +#: src/net/i2p/router/web/NetDbRenderer.java:242 +msgid "Address(es)" +msgstr "地址" + +#: src/net/i2p/router/web/NetDbRenderer.java:259 +#: src/net/i2p/router/web/SummaryBarRenderer.java:124 +msgid "Stats" +msgstr "统计数据" + #: src/net/i2p/router/web/SummaryBarRenderer.java:42 msgid "I2P Services" msgstr "I2P 服务" @@ -1445,6 +1784,7 @@ msgid "View existing tunnels and tunnel build status" msgstr "查看现存隧道及隧道的建立状态" #: src/net/i2p/router/web/SummaryBarRenderer.java:82 +#: src/net/i2p/router/web/TunnelRenderer.java:252 msgid "Tunnels" msgstr "隧道" @@ -1502,10 +1842,6 @@ msgstr "统计图" msgid "Textual router performance statistics" msgstr "路由性能文字统计" -#: src/net/i2p/router/web/SummaryBarRenderer.java:124 -msgid "Stats" -msgstr "统计数据" - #: src/net/i2p/router/web/SummaryBarRenderer.java:134 msgid "I2P Router Help" msgstr "I2P路由帮助" @@ -1526,10 +1862,6 @@ msgstr "切勿将其告诉任何人" msgid "Local Identity" msgstr "本地身份" -#: src/net/i2p/router/web/SummaryBarRenderer.java:150 -msgid "Version" -msgstr "版本" - #: src/net/i2p/router/web/SummaryBarRenderer.java:157 msgid "How long we've been running for this session" msgstr "本次路由运行时间" @@ -1635,6 +1967,106 @@ msgstr "隧道延迟" msgid "Backlog" msgstr "积压" +#: src/net/i2p/router/web/TunnelRenderer.java:40 +#: src/net/i2p/router/web/TunnelRenderer.java:61 +msgid "config" +msgstr "设置" + +#: src/net/i2p/router/web/TunnelRenderer.java:69 +msgid "Participating tunnels" +msgstr "共享隧道" + +#: src/net/i2p/router/web/TunnelRenderer.java:70 +msgid "From" +msgstr "从" + +#: src/net/i2p/router/web/TunnelRenderer.java:70 +msgid "Receive on" +msgstr "接收" + +#: src/net/i2p/router/web/TunnelRenderer.java:71 +msgid "Expiration" +msgstr "到期" + +#: src/net/i2p/router/web/TunnelRenderer.java:71 +msgid "Send on" +msgstr "发送" + +#: src/net/i2p/router/web/TunnelRenderer.java:71 +msgid "To" +msgstr "至" + +#: src/net/i2p/router/web/TunnelRenderer.java:72 +msgid "Rate" +msgstr "速度" + +#: src/net/i2p/router/web/TunnelRenderer.java:72 +msgid "Role" +msgstr "职能" + +#: src/net/i2p/router/web/TunnelRenderer.java:72 +#: src/net/i2p/router/web/TunnelRenderer.java:155 +msgid "Usage" +msgstr "使用情况" + +#: src/net/i2p/router/web/TunnelRenderer.java:116 +msgid "Outbound Endpoint" +msgstr "出站终端" + +#: src/net/i2p/router/web/TunnelRenderer.java:118 +msgid "Inbound Gateway" +msgstr "入站网关" + +#: src/net/i2p/router/web/TunnelRenderer.java:120 +#: src/net/i2p/router/web/TunnelRenderer.java:161 +msgid "Participant" +msgstr "参与节点" + +#: src/net/i2p/router/web/TunnelRenderer.java:125 +msgid "Inactive participating tunnels" +msgstr "不活跃的共享隧道" + +#: src/net/i2p/router/web/TunnelRenderer.java:126 +msgid "Lifetime bandwidth usage" +msgstr "运行期间带宽使用情况" + +#: src/net/i2p/router/web/TunnelRenderer.java:155 +msgid "Expiry" +msgstr "到期" + +#: src/net/i2p/router/web/TunnelRenderer.java:155 +msgid "In/Out" +msgstr "入/出" + +#: src/net/i2p/router/web/TunnelRenderer.java:158 +msgid "Participants" +msgstr "参与节点" + +#: src/net/i2p/router/web/TunnelRenderer.java:164 +msgid "Endpoint" +msgstr "终端" + +#: src/net/i2p/router/web/TunnelRenderer.java:204 +#: src/net/i2p/router/web/TunnelRenderer.java:210 +msgid "Build in progress" +msgstr "创建中" + +#: src/net/i2p/router/web/TunnelRenderer.java:204 +msgid "inbound" +msgstr "入站" + +#: src/net/i2p/router/web/TunnelRenderer.java:210 +msgid "outbound" +msgstr "出站" + +#: src/net/i2p/router/web/TunnelRenderer.java:214 +msgid "No tunnels; waiting for the grace period to end." +msgstr "无隧道;等待宽限期结束。" + +#: src/net/i2p/router/web/TunnelRenderer.java:233 +msgid "Tunnel Counts By Peer" +msgstr "每节点隧道计数" + #~ msgid "" #~ "If you want the router to restart itself after shutting down, you can " #~ "choose one of the following. This is useful in some situations - for " diff --git a/installer/resources/themes/console/classic/console_big.css b/installer/resources/themes/console/classic/console_big.css index c35c6f100..f5f9a763c 100644 --- a/installer/resources/themes/console/classic/console_big.css +++ b/installer/resources/themes/console/classic/console_big.css @@ -19,7 +19,7 @@ img { pre { overflow: auto; - font-size: 8pt !important; + font-size: 9pt !important; width: 95%; padding-top: 10px; } @@ -503,7 +503,7 @@ table { border: 1px solid #bbf; margin: 0 0 5px 0; cell-padding: 1px; - font-size: 7.5pt; + font-size: 9pt; background: #fff; width: 100%; } @@ -518,7 +518,7 @@ table hr { } table tt { - font-size: 7.5pt; + font-size: 9pt; } th { @@ -529,11 +529,11 @@ th { } tt { - font-size: 8pt; + font-size: 9pt; } tt, pre { - font: 8pt "Lucida Console", "DejaVu Sans Mono", Courier, mono; + font: 9pt "Lucida Console", "DejaVu Sans Mono", Courier, mono; } td { @@ -558,7 +558,7 @@ hr { .statusnotes { font-style: italic; - font-size: 8pt; + font-size: 9pt; color: #001; text-align: center; margin: -7px 0 7px 0; @@ -637,13 +637,19 @@ select { submit { margin: 3px 5px 3px 5px; padding: 2px 0; - font: 8pt/140% "Lucida Sans Unicode", "Bitstream Vera Sans", Verdana, Tahoma, Helvetica, sans-serif; + font: 9pt/140% "Lucida Sans Unicode", "Bitstream Vera Sans", Verdana, Tahoma, Helvetica, sans-serif; } table td b{ font-weight:normal; } +i { + font-weight:normal; + font-size:10pt; + font-family:""; +} + p { padding: 5px 20px 0px 20px; text-align: justify; @@ -720,7 +726,7 @@ tt { .tablefooter tr, .tablefooter td { background: #bbf; - font-size: 8pt; + font-size: 9pt; font-weight: bold; line-height: 150%; word-wrap: nowrap;